民间,
我在这里操作文件很困难。
目标:我正在开发一个需要从源创建文件夹和复制文件的脚本,该脚本会向用户读取要创建的月数。如果在2017年需要将字符串更改为.txt文件到目录中,该脚本将复制文件等于要创建的月数。
文件中的原始字符串:ANO INICIO DO ESTUDO 2016 字符串将被更改:ANO INICIO DO ESTUDO 2017
PS:要更改的文件不是原件而是副本
可以从txt文件更改一行吗?
我需要什么:
读取程序源文件并播放到数组 识别数组中字符串的一部分 如果发现字符串是字符串的一部分,则修改该字符串 删除源文件并使用相同的名称编写另一个文件,或者只是更改源文件中的字符串(一行中的单词)。
FILENAME_NEWAVE = Path of the source file
STRING_DGER = String to be searched
FILE_DATE = Year
这不起作用,您正在写源文件
def find_word_in_file_dger(FILENAME_NEWAVE, STRING_DGER, FILE_DATE):
f = open(FILENAME_NEWAVE, "r+")
file_array = f.readlines()
for i in file_array:
if i.find(STRING_DGER.encode('utf-8')):
f.write(i)
else:
print ("TO LENDO O ARRAY")
if FILE_DATE == "2016":
continue
else:
i.replace(STRING_DGER, "ANO INICIO DO ESTUDO " + FILE_DATE)
f.write(i)
print("TO ESCREVENDO A LINHA CORRETAMENTE MLK!! ")
return i
f.close()
return False
答案 0 :(得分:0)
我很确定这会奏效。关于UnicodeDecodeError,建议您查看this
import re
cache = None
with open("file.txt", "r") as f:
cache = f.read()
new_file = re.sub("2017", "2018", cache)
new_file = re.sub("2016", "2017", new_file)
if new_file:
with open("newfile.txt", "w") as f:
f.write(new_file)