だから私はJ2ME開発のためにJavaでしばらく前に書いたいくつかのレガシーツールをサポートしようとしています。
iphone/ipadのC++で同じファイル形式で読み取る必要があります。理由を尋ねる前に->(Android NDK r7もサポートする必要があるため)
今、私は一致する値を取得できず、それが正しいと確信しています:これが私のJava(J2SE)コードです:-
File file = new File(location, "test.d2r");
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
int i = Integer.reverseBytes(8);
writer.write(i);
writer.newLine();
writer.flush();
writer.close();
そしてiOSの土地で私はやっています:-
NSString *url = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"d2r"];
FILE* fp = fopen([url UTF8String], "r");
if (fp)
{
int j;
printf("\nReading...\n");
fscanf(fp, "%c", &j);
fclose(fp);
printf("DIGIT 1 %d\n\n", j);
}
else
{
printf("\n\n No file found...... \n\n");
}
したがって、ファイルは正常に開きますが、番号が一致しません。エンディアンを裏返してみました。私が考えることができる唯一のことは、署名されていない(java)プラットフォームから署名された(c ++)プラットフォームに変換しているときに、そこにサインインして値を台無しにしているということです。
確かではありませんが、どんなポインタでも大歓迎です。