【发布时间】:2019-06-25 06:47:57
【问题描述】:
我正在尝试用新号码替换文本文件中已有的号码。我打开了文件,我打开的文件名很短:“example_Na.chem”,但我仍然收到错误消息:OSError: [Errno 36] File name too long”。
我使用的代码是:
filename_chem = open('./input/example_Na/example_Na.chem', 'r').read()
input_file_chem = filename_chem.format(albeitSSA=albeitSSA)
with open(filename_chem, 'w') as fid:
fid.write(input_file_chem)
【问题讨论】:
-
首先,它与您运行的操作系统有关,因为这决定了文件名的最大长度。其次,文件名长度包括完整的路径名,所以
/input/example_Na/example_Na.chem是文件名的全部部分。 -
你在什么操作系统上做这个?
-
您好,感谢您回答问题。 @JGFMK 我正在使用 Linux 16.04。
-
@Ken White 但我认为问题在于文件的内容。这是一个很长的文本文件。出错后,打印出文本文件的内容。
-
文本文件的内容不会导致文件名过长错误。文件太大会导致内存不足错误。阅读错误信息中的文字。
标签: python python-3.x