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操作时间和日期之asctime()方法的使用
May 22 Python
Python导入模块时遇到的错误分析
Aug 30 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
Sep 28 Python
pandas.DataFrame.to_json按行转json的方法
Jun 05 Python
Scrapy使用的基本流程与实例讲解
Oct 21 Python
python实现自动获取IP并发送到邮箱
Dec 26 Python
Python3.6.x中内置函数总结及讲解
Feb 22 Python
深入浅析Python中的迭代器
Jun 04 Python
Django中create和save方法的不同
Aug 13 Python
python类的实例化问题解决
Aug 31 Python
Python谱减法语音降噪实例
Dec 18 Python
python 5个顶级异步框架推荐
Sep 09 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
比较strtr, str_replace和preg_replace三个函数的效率
2013/06/26 PHP
PHP 提取图片img标记中的任意属性的简单实例
2013/12/10 PHP
Laravel框架路由配置总结、设置技巧大全
2014/09/03 PHP
PHP获取当前完整URL地址的函数
2014/12/21 PHP
php is_writable判断文件是否可写实例代码
2016/10/13 PHP
php与阿里云短信接口接入操作案例分析
2020/05/27 PHP
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
2011/04/12 Javascript
提升你网站水平的jQuery插件集合推荐
2011/04/19 Javascript
jquery实现点击TreeView文本父节点展开/折叠子节点
2013/01/10 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
2013/01/17 Javascript
关于eval 与new Function 到底该选哪个?
2013/04/17 Javascript
form.submit()不能提交表单的错误原因及解决方法
2014/10/13 Javascript
jQuery插件Validate实现自定义表单验证
2016/01/18 Javascript
jQuery实现边框动态效果的实例代码
2016/09/23 Javascript
针对后台列表table拖拽比较实用的jquery拖动排序
2016/10/10 Javascript
详谈js中window.location.search的用法和作用
2017/02/13 Javascript
jQuery的$.extend 浅拷贝与深拷贝
2017/03/08 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
微信小程序checkbox组件使用详解
2018/01/31 Javascript
浅析node应用的timing-attack安全漏洞
2018/02/28 Javascript
解决iview打包时UglifyJs报错的问题
2018/03/07 Javascript
基于Vue实现拖拽效果
2018/04/27 Javascript
jQuery中将json数据显示到页面表格的方法
2018/05/27 jQuery
vue移动端下拉刷新和上拉加载的实现代码
2018/09/08 Javascript
Vue Router 实现动态路由和常见问题及解决方法
2020/03/06 Javascript
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
深入探究Django中的Session与Cookie
2017/07/30 Python
教你用Python写安卓游戏外挂
2018/01/11 Python
Python+matplotlib实现填充螺旋实例
2018/01/15 Python
Python网络编程基于多线程实现多用户全双工聊天功能示例
2018/04/10 Python
Selenium定时刷新网页的实现代码
2018/10/31 Python
python使用paramiko模块通过ssh2协议对交换机进行配置的方法
2019/07/25 Python
Python实现使用dir获取类的方法列表
2019/12/24 Python
Python3爬虫关于代理池的维护详解
2020/07/30 Python
英国最大的香水商店:The Fragrance Shop
2018/07/06 全球购物
商务英语专业求职信
2014/06/26 职场文书