博客
关于我
Python \r\n与\n的转换
阅读量:795 次
发布时间:2023-03-06

本文共 5027 字,大约阅读时间需要 16 分钟。

原文链接[脚本之家](http://www.jb51.net/article/64669.htm)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import
os
 
def
replace(filePath, w2u):
  
try
:
    
oldfile
=
open
(filePath,
"rb+"
)    
#这里必须用b打开
    
path, name
=
os.path.split(filePath)
    
newfile
=
open
(path
+
'$'</code> <code class="py keyword">+</code> <code class="py plain">name, </code><code class="py string">"ba+"</code><code class="py plain">)</code></div><div class="line number8 index7 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code>&nbsp;</div><div class="line number9 index8 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">old </code><code class="py keyword">=</code> <code class="py plain">b''</code></div><div class="line number10 index9 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">new </code><code class="py keyword">=</code> <code class="py plain">b''</code></div><div class="line number11 index10 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py keyword">if</code> <code class="py plain">w2u </code><code class="py keyword">=</code><code class="py keyword">=</code> <code class="py color1">True</code><code class="py plain">:</code></div><div class="line number12 index11 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">old </code><code class="py keyword">=</code> <code class="py plain">b</code><code class="py string">'\r'</code></div><div class="line number13 index12 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">new </code><code class="py keyword">=</code> <code class="py plain">b''</code></div><div class="line number14 index13 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py keyword">else</code><code class="py plain">:</code></div><div class="line number15 index14 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">old </code><code class="py keyword">=</code> <code class="py plain">b</code><code class="py string">'\n'</code></div><div class="line number16 index15 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">new </code><code class="py keyword">=</code> <code class="py plain">b</code><code class="py string">'\r\n'</code></div><div class="line number17 index16 alt2">&nbsp;</div><div class="line number18 index17 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">data </code><code class="py keyword">=</code> <code class="py plain">b''</code></div><div class="line number19 index18 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py keyword">while</code> <code class="py plain">(</code><code class="py color1">True</code><code class="py plain">):</code></div><div class="line number20 index19 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">data </code><code class="py keyword">=</code> <code class="py plain">oldfile.read(</code><code class="py value">200</code><code class="py plain">)</code></div><div class="line number21 index20 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">newData </code><code class="py keyword">=</code> <code class="py plain">data.replace(old, new)</code></div><div class="line number22 index21 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">newfile.write(newData)</code></div><div class="line number23 index22 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py keyword">if</code> <code class="py functions">len</code><code class="py plain">(data) &lt; </code><code class="py value">200</code><code class="py plain">:</code></div><div class="line number24 index23 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py keyword">break</code></div><div class="line number25 index24 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">newfile.close()</code></div><div class="line number26 index25 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">oldfile.close()</code></div><div class="line number27 index26 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code>&nbsp;</div><div class="line number28 index27 alt1"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">os.remove(filePath)</code></div><div class="line number29 index28 alt2"><code class="py spaces">&nbsp;&nbsp;&nbsp;&nbsp;</code><code class="py plain">os.rename(path </code><code class="py keyword">+</code> <code class="py string">'$'
+
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(二进制)模式打开。

您可能感兴趣的文章:

转载地址:http://xgafk.baihongyu.com/

你可能感兴趣的文章
mysql备份工具xtrabackup
查看>>
mysql备份恢复出错_尝试备份/恢复mysql数据库时出错
查看>>
mysql复制内容到一张新表
查看>>
mysql复制表结构和数据
查看>>
mysql复杂查询,优质题目
查看>>
MySQL外键约束
查看>>
MySQL多表关联on和where速度对比实测谁更快
查看>>
MySQL多表左右连接查询
查看>>
mysql大批量删除(修改)The total number of locks exceeds the lock table size 错误的解决办法
查看>>
mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
查看>>
mysql如何删除数据表,被关联的数据表如何删除呢
查看>>
MySQL如何实现ACID ?
查看>>
mysql如何记录数据库响应时间
查看>>
MySQL子查询
查看>>
Mysql字段、索引操作
查看>>
mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
查看>>
mysql字段类型不一致导致的索引失效
查看>>
mysql字段类型介绍
查看>>
mysql字段解析逗号分割_MySQL逗号分割字段的行列转换技巧
查看>>
MySQL字符集与排序规则
查看>>