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框架下使用django-tagging的教程
May 30 Python
python中list列表的高级函数
May 17 Python
常见的python正则用法实例讲解
Jun 21 Python
Python中内置的日志模块logging用法详解
Jul 12 Python
Python中 map()函数的用法详解
Jul 10 Python
win7下python3.6安装配置方法图文教程
Jul 31 Python
Pycharm2017版本设置启动时默认自动打开项目的方法
Oct 29 Python
pygame游戏之旅 添加icon和bgm音效的方法
Nov 21 Python
Python使用paramiko操作linux的方法讲解
Feb 25 Python
Python实现制度转换(货币,温度,长度)
Jul 14 Python
Django 实现将图片转为Base64,然后使用json传输
Mar 27 Python
python 生成任意形状的凸包图代码
Apr 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
生成静态页面的PHP类
2006/11/25 PHP
PHP数字格式化
2006/12/06 PHP
介绍一些PHP判断变量的函数
2012/04/24 PHP
PHP读取数据库并按照中文名称进行排序实现代码
2013/01/29 PHP
php的数组与字符串的转换函数整理汇总
2013/07/18 PHP
js验证表单大全
2006/11/25 Javascript
JavaScript类库D
2010/10/24 Javascript
jquery怎样实现ajax联动框(一)
2013/03/08 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
Javascript的严格模式strict mode详细介绍
2014/06/06 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
基于原生JS实现图片裁剪
2016/08/01 Javascript
JavaScript中数据类型转换总结
2016/12/25 Javascript
JavaScript实现瀑布流图片效果
2017/06/30 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
JavaScript原生实现观察者模式的示例
2017/12/15 Javascript
利用angular、react和vue实现相同的面试题组件
2018/02/19 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
JS实现纵向轮播图(初级版)
2020/01/18 Javascript
Python sys.path详细介绍
2013/10/17 Python
在Python中操作时间之mktime()方法的使用教程
2015/05/22 Python
ubuntu安装sublime3并配置python3环境的方法
2018/03/15 Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
2018/07/11 Python
python名片管理系统开发
2020/06/18 Python
python3将变量输入的简单实例
2020/08/19 Python
详解基于Scrapy的IP代理池搭建
2020/09/29 Python
印尼披萨外送专家:Domino’s Pizza印尼
2017/12/28 全球购物
凯撒娱乐:Caesars Entertainment
2018/02/23 全球购物
加拿大品牌鞋包连锁店:Little Burgundy
2021/02/28 全球购物
商务英语本科生的自我评价分享
2013/11/15 职场文书
教师的实习自我鉴定
2013/12/17 职场文书
学生会部长竞聘书
2014/03/31 职场文书
探亲假请假条
2014/04/11 职场文书
幼儿教师师德承诺书
2014/05/23 职场文书
小学教师师德师风自我剖析材料
2014/09/29 职场文书
nginx配置指令之server_name的具体使用
2022/08/14 Servers