[英]Read Binary File Python to Vb.net
我有两行简单的Python脚本,其中len(fileData)为3530
Python
imgFile = file(inputFile, "rb")
fileData = imgFile.read()
我正在尝试将其转换为vb.net。 如果这样做,我可以得到匹配的长度,但是我一直试图将数据本身实际获取到字符串变量中:
VB.NET
Using reader As New BinaryReader(File.Open(inputFile, FileMode.Open))
Dim length As Integer = reader.BaseStream.Length
End Using
我尝试使用
VB.NET
Dim fileData As String = File.ReadAllText(inputFile)
但是当我执行len(fileData)时,它是3528,所以有些不对劲。
我只想打开二进制文件并将其读取为字符串变量,然后看它的长度为3530,因为它当前可以在Python脚本中正常工作。
我想念什么?
您缺少并非每个二进制数据都可以表示为String的事实。
如果只需要原始数据及其长度,则可以将文件读取为字节数组:
Dim myBytes() As Byte = IO.File.ReadAllBytes("myFile.dat")
Console.WriteLine(myBytes.Length)
如果确实需要将数据作为字符串,则必须考虑字符串的编码:
Dim myString As String = IO.File.ReadAllText("myFile.dat", System.Text.Encoding.UTF8)
不带第二个参数的ReadAllText()
假定使用一种编码(很可能是) Encoding.Default
,即系统代码页的ANSI。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.