이진 파일을 C로 작성했으며 java로 읽고 싶습니다. 나는이 같은 C에서 파일을 썼다 : 자바에서Java에서 C로 작성된 파일에서 읽기
void Log(TCHAR *name,int age){
write_int(file, 2012);
write_int(file, 4);
write_int(file, 16);
write_int(file, 12);
write_int(file, 58);
write_int(file, 50);
fwrite(&name, sizeof(name), 1, file);
fwrite(&age, sizeof(age), 1, file);
fflush(processusFile);
}
내가 BinaryFile
클래스 http://www.heatonresearch.com/code/22/BinaryFile.java를 사용하고 난 이렇게 : 이것은 숯불 * 작동하지 않는
RandomAccessFile f = new RandomAccessFile("myfile.dat", "r");
BinaryFile binaryFile = new BinaryFile(f);
ArrayList<String> text = new ArrayList<>();
while (true) {
try {
Calendar calendar = new GregorianCalendar();
int year = (int) binaryFile.readDWord();
int month = (int) binaryFile.readDWord();
int date = (int) binaryFile.readDWord();
int hourOfDay = (int) binaryFile.readDWord();
int minute = (int) binaryFile.readDWord();
int second = (int) binaryFile.readDWord();
calendar.set(year, month, date, hourOfDay, minute, second);
System.out.println(binaryFile.readFixedString(64));
catch (Exception e) {
break;
}
}
하지만 작동 인터넷 용. 어떻게 문자열을 쓸 수 있습니까?
(44))하지만 java에서 이렇게하면 :'System.out.println (">"+ length + ">"binaryFile.readFixedString (length));'내가 이것을 가지고있다 :> 8>? A @ – jadou
@khelch I 문자열을 읽기 전에 길이를 읽었다 고 가정하십시오. – dasblinkenlight
예 System.out 이전에'int length = (int) binaryFile.readDWord();'@ – jadou