私はJavaでバイナリファイル(c#で書かれています)を読んでいます。その360Kb以上の長いファイルです。私はコードをバイト単位で読んでフィールドに値を設定する必要があります。 すでにC#で実装されているコードを読み込み、その動作を複製する必要があります。 C#でコードがこのreadInt16()in c#vs readShort()in java
FileVersion = s.ReadByte()
FileVersionMinor = s.ReadByte()
HeaderLength = s.ReadInt16()
ような何か今、私はJavaで
dis = new DataInputStream(fin);
fileVersionMajor = dis.readUnsignedByte()
def fileVersionMinor = dis.readUnsignedByte()
def headerLength = dis.readShort()
上記と同じことをやろうとしていますが、私は問題をドリルダウンしようとしたとき、私は、異なる出力を取得し、私が見そのjavaコードはstreambyteの最後に00000000を追加します。
ここで問題は何ですか?
PS私は def headerLength = dis.readByte()
, と期待しています。
JavaでC#の 'var'として' def'キーワードはありません。おそらくScalaを意味しているかもしれません([scala]へのretagが必要です)? –