2017-09-01 12 views
0

私はいくつかのC#コードをPythonに変換しようとしており、C#のfilestreamクラスに固執しています。ファイルストリームがインスタンス化され、jpegデータがロードされます。C#FileStreamクラスに相当するPython

fs = new FileStream("./preview.jpg", FileMode.OpenOrCreate); 
while(true): 
    int length = socketServer.Receive(arrServerRecMsg); 
    int offset = arrServerRecMsg[2] * 256 + arrServerRecMsg[3]; 
    fs.Seek(offset * 1020, SeekOrigin.Begin); 
    fs.Write(arrServerRecMsg, 4, arrServerRecMsg.Length - 4); 

その後、プレビューで読まれる:

FileStream fs = new FileStream("./preview.jpg", FileMode.Open); 
    byte[] data = new byte[fs.Length]; 
    fs.Read(data, 0, data.Length); 

は、Pythonの同等のオブジェクトにデータをロードするだろうか?どのようにオフセットを実行するのですか?

+1

、PythonでのFileStreamと同等です。 –

答えて

1

Pythonではちょうどopenメソッドです。

open("./preview.jpg", "w+") == new FileStream("./preview.jpg", FileMode.OpenOrCreate)

それは、fileObjectを返します。

+0

ありがとう! '' seek 'メソッドを持っているように見える – Sam

+0

'' fs.Write(arrServerRecMsg、4、arrServerRecMsg.Length - 4);'を複製するには、 '' fo.write(arrServerRecMsg [4:]) 'でしょうか? – Sam