こんにちは、ファイルから正確なデータを書き込んだり読み取ったりするのに問題があります。
私がやっていることは、最初にをに変換しlistてstringからファイルに書き込むことです
S = [63, 16, 13, 30, 22, 13, 99, 68, 75, 91, 73, 80, 90]
これを文字列に変換すると、
UpdatedPlainText = ''.join(chr(s) for s in S)
print("This is the Data:", UpdatedPlainText)
in originalの2 つのint値が存在するため、データがめちゃくちゃになります。13List\r
出力:
cDK[IPZ the Data: ?►
これはこのように表示されているだけですが、元のデータはまだそこにあります。
データはこれを使用して取得できます. ここでデータは最初に整数に変換されてから出力されます.
L = list(ord(s) for s in UpdatedPlainText)
print(L)
出力:
[63, 16, 13, 30, 22, 13, 99, 68, 75, 91, 73, 80, 90]
integerしかし、データをfromに直接変換する代わりに、String最初に in の値をUpdatedPlainTextファイルに書き込むと、
PlainText = open('uText.txt', 'w')
PlainText.write(UpdatedPlainText)
PlainText.close()
そして、readこのファイル、
PlainText = open('uText.txt', 'r')
PlainText = PlainText.read() 
ファイルからデータを印刷し、
L = list(ord(s) for s in PlainText)
print(L)
アウトプットは違うだろうし、
[63, 16, 10, 30, 22, 10, 99, 68, 75, 91, 73, 80, 90]
ご覧のとおり、値13は に置き換えられます10。これは、\rが に等しいためです。13
この問題を解決するにはどうすればよいですか? 13への変換を防ぐにはどうすればよいですか\r