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使用functools模块中的partial函数生成偏函数
Jul 02 Python
动感网页相册 python编写简单文件夹内图片浏览工具
Aug 17 Python
Python实现简易端口扫描器代码实例
Mar 15 Python
Python 列表(List) 的三种遍历方法实例 详解
Apr 15 Python
Python实现将Excel转换为json的方法示例
Aug 05 Python
利用scrapy将爬到的数据保存到mysql(防止重复)
Mar 31 Python
利用Python读取txt文档的方法讲解
Jun 23 Python
python json.loads兼容单引号数据的方法
Dec 19 Python
详解Python中的正斜杠与反斜杠
Aug 09 Python
pytorch在fintune时将sequential中的层输出方法,以vgg为例
Aug 20 Python
如何基于Python Matplotlib实现网格动画
Jul 20 Python
使用Python解析Chrome浏览器书签的示例
Nov 13 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
一个简洁的多级别论坛
2006/10/09 PHP
ThinkPHP模板中判断volist循环的最后一条记录的验证方法
2014/07/01 PHP
PHP常用技巧汇总
2016/03/04 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
2016/03/28 PHP
jquery select选中的一个小问题
2009/10/11 Javascript
javascript setTimeout和setInterval 的区别
2009/12/08 Javascript
JavaScript的面向对象编程基础
2015/08/13 Javascript
Node.js的Web模板引擎ejs的入门使用教程
2016/06/06 Javascript
Bootstrap前端开发案例二
2016/06/17 Javascript
JS实现添加,替换,删除节点元素的方法
2016/06/30 Javascript
AngularJS自定义服务与fliter的混合使用
2016/11/24 Javascript
JavaScript实现二分查找实例代码
2017/02/22 Javascript
Angular2学习教程之ng中变更检测问题详解
2017/05/28 Javascript
AngularJS实现页面跳转后自动弹出对话框实例代码
2017/08/02 Javascript
jQuery实现动态添加和删除input框代码实例
2019/03/29 jQuery
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
JavaScript Event Loop相关原理解析
2020/06/10 Javascript
JavaScript实现滑块验证解锁
2021/01/07 Javascript
分析Python中设计模式之Decorator装饰器模式的要点
2016/03/02 Python
python字典的常用操作方法小结
2016/05/16 Python
浅析python中numpy包中的argsort函数的使用
2018/08/30 Python
对Python 检查文件名是否规范的实例详解
2019/06/10 Python
Python键鼠操作自动化库PyAutoGUI简介(小结)
2020/05/17 Python
HTML5 body设置自适应全屏
2020/05/07 HTML / CSS
不假外出检讨书
2014/01/27 职场文书
公司司机岗位职责
2014/02/07 职场文书
董事长助理岗位职责
2014/02/18 职场文书
家长学校培训材料
2014/08/20 职场文书
国庆节活动总结
2014/08/26 职场文书
员工工作自我评价
2014/09/26 职场文书
小学生优秀评语
2014/12/29 职场文书
主持人开场白台词
2015/05/29 职场文书
python实现图片批量压缩
2021/04/24 Python
Oracle 区块链表创建过程详解
2021/05/15 Oracle
用Python selenium实现淘宝抢单机器人
2021/06/18 Python
关于CentOS 8 搭建MongoDB4.4分片集群的问题
2021/10/24 MongoDB