(Java)将十进制/十六进制写入文件,而不是字符串

Ton*_*ark 4 java string hex decimal

如果我有一个文件,并且我想在字面上写'42'(值,而不是字符串),例如是十六进制的2a,我该怎么做?我希望能够使用outfile.write(42)或outfile.write(2a)之类的东西,而不是将字符串写入文件.

(我意识到这是一个简单的问题,但我找不到谷歌的答案,可能是因为我不知道正确的搜索条件)

Joa*_*uer 8

要编写二进制数据,您需要使用OutputStream(例如a FileOutputStream).

如果您发现您的数据是以字符串形式编写的,那么您可能正在使用a Writer(例如a FileWriter或a OutputStreamWriter包围FileOutputStream).名为" *Writer"或" *Reader"的所有内容都专门处理文本String.如果你想写二进制数据,你会想要避免这些.

如果你想编写不同的数据类型(而不仅仅是普通byte的),那么你会想要查看DataOutputStream.