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 相关文章推荐
详解Python3中yield生成器的用法
Aug 20 Python
Python冒泡排序注意要点实例详解
Sep 09 Python
python如何为创建大量实例节省内存
Mar 20 Python
解决Python3中的中文字符编码的问题
Jul 18 Python
pygame实现简易飞机大战
Sep 11 Python
python使用pandas处理大数据节省内存技巧(推荐)
May 05 Python
pandas 使用均值填充缺失值列的小技巧分享
Jul 04 Python
在pytorch中为Module和Tensor指定GPU的例子
Aug 19 Python
python创建ArcGIS shape文件的实现
Dec 06 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
Apr 07 Python
keras自定义损失函数并且模型加载的写法介绍
Jun 15 Python
Python如何快速找到多个字典中的公共键(key)
Apr 29 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
THINKPHP支持YAML配置文件的设置方法
2015/03/17 PHP
Laravel中前端js上传图片到七牛云的示例代码
2017/09/04 PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
2019/10/09 PHP
根据经纬度计算地球上两点之间的距离js实现代码
2013/03/05 Javascript
ie与ff下的event事件使用介绍
2013/11/25 Javascript
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
jQuery中position()方法用法实例
2015/01/16 Javascript
简介JavaScript中的setDate()方法的使用
2015/06/11 Javascript
理解JavaScript中worker事件api
2015/12/25 Javascript
小程序获取周围IBeacon设备的方法
2018/10/31 Javascript
Nest.js环境变量配置与序列化详解
2021/02/21 Javascript
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
2015/03/06 Python
介绍Python中的一些高级编程技巧
2015/04/02 Python
解决Python中由于logging模块误用导致的内存泄露
2015/04/23 Python
Python之多线程爬虫抓取网页图片的示例代码
2018/01/10 Python
Random 在 Python 中的使用方法
2018/08/09 Python
pandas中apply和transform方法的性能比较及区别介绍
2018/10/30 Python
用Anaconda安装本地python包的方法及路径问题(图文)
2019/07/16 Python
python return逻辑判断表达式实现解析
2019/12/02 Python
python 多进程和协程配合使用写入数据
2020/10/30 Python
玩具反斗城天猫官方旗舰店:享誉全球的玩具店
2017/10/10 全球购物
玉兰油美国官网:OLAY美国
2018/10/25 全球购物
SCDKey德国:全球领先的数字游戏市场
2019/04/09 全球购物
几道Java和数据库的面试题
2013/05/30 面试题
父亲生日宴会答谢词
2014/01/10 职场文书
奶茶专卖店创业计划书
2014/01/18 职场文书
七年级数学教学反思
2014/01/22 职场文书
家长通知书教师评语
2014/04/17 职场文书
电子信息工程自荐信
2014/05/26 职场文书
2014红色之旅心得体会
2014/10/07 职场文书
学雷锋活动简报
2015/07/20 职场文书
2016年小学六一儿童节活动总结
2016/04/06 职场文书
Python上下文管理器Content Manager
2021/06/26 Python
Python爬虫基础之初次使用scrapy爬虫实例
2021/06/26 Python
Nginx反向代理、重定向
2022/04/13 Servers
python实现学生信息管理系统(面向对象)
2022/06/05 Python