美文网首页
Python 文件操作之读写错误

Python 文件操作之读写错误

作者: QUIZ_JS | 来源:发表于2018-09-29 21:17 被阅读0次

错误还原

读错误

在对文件进行读操作过程中,试图将txt文件中的数据按照4个字节的大小(1点)依次读出并进行数据处理 ,可读到ae99 1a41时,数据不再连续,1a无法读出,百思不得其解,各种尝试后仍然一筹莫展,一度怀疑python对于文件操作存在bug。
代码如下:

uartfile = open('addata0.txt','r')
data = uartfile.read(4)

写错误

对文件写操作时,产生同样错误,再遇到0a0d时无法连续写入。


基础知识

文件的读写操作存在两种模式:文本模式和二进制模式。
所有文件在计算机的存储在物理层以二进制0或1的编码呈现,所以同一文件的文本模式与二进制模式底层二进制相同,只是在上层呈现方式上的编码不同而已。
文本模式是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等。
二进制模式是基于值编码的文件。
文本文件基本上是定长编码的(也有非定长的编码如UTF-8),每个字符在具体编码中是固定的,ASCII码是8个比特的编码,UNICODE一般占16个比特。而二进制文件可看成是变长编码的,因为数值的大小和位数的长度有关系。
目前自己接触的二进制模式和文本模式的不同主要有以下几个:

1、换行符在Windows 文本里是 \r\n (0x0D0A,回车换行),在 Linux 文本里是 \n(0x0A换行符)。
2、 结束符(0x1A),在Linux下采用文本模式读写文本文件不会存在结束符现象,但是在Windows下遇到该问题。


解决方法

在python的文本操作下存在以下模式:

r :读文本模式
w :写文本模式
rb :读二进制模式
wb :写二进制模式

对文本文件进行文本操作(读取或写入字符),直接采用r或者w。
对文本文件进行二进制操作(读出或写入数据),采用rb或者wb。

uartfile = open('addata0.txt','rb')
channl1 = open ('channl1.txt','wb')

相关文章

  • Python 文件操作之读写错误

    错误还原 读错误 在对文件进行读操作过程中,试图将txt文件中的数据按照4个字节的大小(1点)依次读出并进行数据处...

  • 用Python实现磁盘IO操作全攻略,让数据流动起来!

    01 文件读写 1. 打开文件 读写文件是最常见的IO操作。Python内置了读写文件的函数,方便了文件的IO操作...

  • 【2017-09-28】文件与IO(一)

    文件的读写操作 前导 python内置了读写文件的函数。读写文件,不是直接操作磁盘,现代操作系统不允许,所以在磁盘...

  • 014.Python文件读写

    Python文件读写 1. 概述 读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。...

  • Python基础教程系列五:文件

    文件操作大纲 读写文件是最常见的IO操作。Python内置了读写文件的函数 1、文件操作 2、os 3、上下文处理器

  • Python之文件操作

    文件读写 文件读写是最基本的IO操作,在Python中内置了open函数来用于文件的读写操作,此函数创建一个文件对...

  • 跟我一起学Python(八)

    一、IO编程 读写文件是最常见的IO操作,Python内置了读写文件的函数。文件读写的原理:在磁盘上读写文件的功能...

  • 31.Python:文件读写

    IO操作与读写文件 读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。不论哪种,一定...

  • Python 文件操作

    一. Python 读写 创建文件 Python中对文件,文件夹(文件操作函数)的操作需要涉及到OS 模块和 sh...

  • Python中文件的读取

    读写文件是数据分析中常用的操作。Python内置了读写文件的函数。需要了解的是,在磁盘上读写文件的功能都是由操作系...

网友评论

      本文标题:Python 文件操作之读写错误

      本文链接:https://www.haomeiwen.com/subject/xeoboftx.html