我有一个很长的字符串(定期间有\ n的DNA序列),我正在尝试写入文件。
使用下面的代码编写,我有一个C ++程序中getline无法完全访问的文件 - 也就是说,istream似乎认为该文件只有大约十几行。同样,如果我在文件上做了cat或更多,我只看到该文件的十几行。 然而,如果我用编辑器(比如gedit)打开文件,整个文件就在那里,如果我重新保存,我突然能够阅读整个文件。
output = open(fileFasta, 'w')
lines = vSeq[1].split('\n')
# Tried this
output.write(vSeq[1])
# And this
for line in lines:
output.write(line)
output.flush()
output.close()
我显然没有以gedit的一些重要方式完成文件。想法?
答案 0 :(得分:2)
使用ghex发现我的源文件是使用回车符(\ r)而不是换行符(\ n)。
答案 1 :(得分:0)
也许你的C ++程序不能充分刷新输出流。或者在某处可能有一个空字节......