1
私は通常、私の.netアプリケーションでFileOpen、FileGet、およびFileCloseを使用しています。しかし、私は友人から、IOを速く使うべきだと言われ、全体的にはより良いものになっています。私はドキュメントを見てきましたが、まだ少し混乱しています。ここでは、ファイルバインダーのための私の元のコードは次のとおりです。FileOpenの代わりにFile I/O Help
'Opens file1 by user choice and gets contents
FileOpen(1, TextBox1.Text, OpenMode.Binary, OpenAccess.Read, OpenShare.Default)
filein = Space(LOF(1))
FileGet(1, filein)
FileClose(1)
'Opens file2 and gets contents
FileOpen(1, Application.StartupPath & "\file2.exe", OpenMode.Binary, OpenAccess.Read, OpenShare.Default)
file2 = Space(LOF(1))
FileGet(1, file2)
FileClose(1)
'Opens final file that will contain both binded files
FileOpen(1, filename, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.Default)
FilePut(1, file2 & filesplit & filein)
FileClose(1)
私は運でIO.File.WriteAllBytesとIO.File.WriteAllTextを使用しようとしました。 IOを使用するためにコードを変更するにはどうすればよいですか?おかげ
あなたは、いくつかのためにあなたの友人に尋ねる必要があります。
ファイルにバイト配列を書き込むために証明。あなたが使うメソッドは 'System.IO'よりも抽象度の薄いレイヤーなので、メソッドの間にはほとんど期待していません。 – Oded
最大の問題は、バイナリデータを文字列に格納していることです。文字列はvb.netで正規化され、データが破棄されます。バイト配列に切り替える必要があります。 –