import osdef replace(filepath, w2u): try: oldfile = open(filepath, rb+) #这里必须用b打开 path, name = os.path.split(filepath) newfile = open(path + '$' + name, ba+) old = b'' new = b'' if w2u == true: old = b'\r' new = b'' else: old = b'\n' new = b'\r\n' data = b'' while (true): data = oldfile.read(200) newdata = data.replace(old, new) newfile.write(newdata) if len(data) < 200: break newfile.close() oldfile.close() os.remove(filepath) os.rename(path + '$' + name, filepath) except ioerror as e: print(e) if __name__ == __main__: print(请输入文件路径:) filepath = input() replace(filepath, false) #这个改为true就可以实现\n变成\r\n
要注意的是,在python里,像\r\n这样的符号,如果是文本打开的话,是找不到\r\n的,而只能找到'\n',所以必须用b(二进制)模式打开。
