Python实现把回车符\r\n转换成\n


Posted in Python onApril 23, 2015

最近在做cocos2d-x的简明配置,发现有的朋友的文本编辑器,自动将\r\n截断成\n,(在unix上换行使用\n,windows上,换行使用的是\r\n)于是,写了这个脚本,希望对一些朋友有所帮助,不用一行一行去改

import os

def 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(二进制)模式打开。

Python 相关文章推荐
python Django批量导入数据
Mar 25 Python
Windows下搭建python开发环境详细步骤
Jul 20 Python
Python实现的选择排序算法原理与用法实例分析
Nov 22 Python
Python+tkinter使用40行代码实现计算器功能
Jan 30 Python
如何用Python合并lmdb文件
Jul 02 Python
python TKinter获取文本框内容的方法
Oct 11 Python
Python3爬虫使用Fidder实现APP爬取示例
Nov 27 Python
详解python中自定义超时异常的几种方法
Jul 29 Python
python 利用turtle库绘制笑脸和哭脸的例子
Nov 23 Python
Python安装OpenCV的示例代码
Mar 05 Python
Python图像阈值化处理及算法比对实例解析
Jun 19 Python
Python requests及aiohttp速度对比代码实例
Jul 16 Python
Python实现对比不同字体中的同一字符的显示效果
Apr 23 #Python
Python3里的super()和__class__使用介绍
Apr 23 #Python
Python实现的飞速中文网小说下载脚本
Apr 23 #Python
Python中使用PyQt把网页转换成PDF操作代码实例
Apr 23 #Python
Python里disconnect UDP套接字的方法
Apr 23 #Python
Python实现的Google IP 可用性检测脚本
Apr 23 #Python
Python3.2中的字符串函数学习总结
Apr 23 #Python
You might like
How do I change MySQL timezone?
2008/03/26 PHP
PHP实现的激活用户注册验证邮箱功能示例
2017/06/06 PHP
JavaScript面向对象之Prototypes和继承
2012/07/12 Javascript
使用GruntJS构建Web程序之合并压缩篇
2014/06/06 Javascript
Javscript调用iframe框架页面中函数的方法
2014/11/01 Javascript
jQuery Ajax()方法使用指南
2014/11/19 Javascript
jQuery使用empty()方法删除元素及其所有子元素的方法
2015/03/26 Javascript
jQuery实现自定义checkbox和radio样式
2015/07/13 Javascript
JavaScript中定义类的方式详解
2016/01/07 Javascript
JavaScript中Object.prototype.toString方法的原理
2016/02/24 Javascript
更高效的使用JQuery 这里总结了8个小技巧
2016/04/13 Javascript
jQuery操作cookie
2016/08/08 Javascript
微信小程序  自定义创建详细介绍
2016/10/27 Javascript
php输出全部gb2312编码内的汉字方法
2017/03/04 Javascript
JScript实现地址选择功能
2017/08/15 Javascript
深入浅析JavaScript中的RegExp对象
2017/09/18 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
2020/07/20 Javascript
VUE异步更新DOM - 用$nextTick解决DOM视图的问题
2020/11/06 Javascript
[05:53]敌法师的金色冠名ID"BurNIng",是传说,是荣耀
2020/07/11 DOTA
Python使用sorted对字典的key或value排序
2018/11/15 Python
python实现顺时针打印矩阵
2019/03/02 Python
python学习开发mock接口
2019/04/28 Python
python搜索包的路径的实现方法
2019/07/19 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
2020/02/06 Python
从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)
2020/08/31 Python
python使用Windows的wmic命令监控文件运行状况,如有异常发送邮件报警
2021/01/30 Python
html5视频常用API接口的实战示例
2020/03/20 HTML / CSS
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
挂靠协议书范本
2014/04/22 职场文书
年度评优评先方案
2014/06/03 职场文书
大学毕业典礼演讲稿
2014/09/09 职场文书
先进工作者申报材料
2014/12/23 职场文书
新员工考核评语
2014/12/31 职场文书
党员干部学法用法心得体会
2016/01/21 职场文书
CSS font-variation 可变字体的魅力(实例详解)
2022/03/03 HTML / CSS
python装饰器代码解析
2022/03/23 Python