Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:如何使用RandomAccessFile将字符串作为字节写入.txt_Java_File Io_Randomaccessfile - Fatal编程技术网

Java:如何使用RandomAccessFile将字符串作为字节写入.txt

Java:如何使用RandomAccessFile将字符串作为字节写入.txt,java,file-io,randomaccessfile,Java,File Io,Randomaccessfile,首先,我读了很多关于这个问题的书。然而,这些都不是我的解决方案。我试图从控制台读取字符串并将其作为字节写入.txt 我试过FileWriter/BurfferWriter。但是,例如,我在控制台中键入“abcd”,然后将其设置为字节[]。在for循环中,我把它写在txt文件中。这些看起来不错。然而,当我查看txt文件时,我发现它是按正常方式编写的,“abcd”。我希望它被写出来,就像我不希望任何人在打开我的.txt文件时读取它一样 然后,我尝试随机访问该文件。此时,我编写了如下代码: for(i

首先,我读了很多关于这个问题的书。然而,这些都不是我的解决方案。我试图从控制台读取字符串并将其作为字节写入.txt

我试过FileWriter/BurfferWriter。但是,例如,我在控制台中键入“abcd”,然后将其设置为字节[]。在for循环中,我把它写在txt文件中。这些看起来不错。然而,当我查看txt文件时,我发现它是按正常方式编写的,“abcd”。我希望它被写出来,就像我不希望任何人在打开我的.txt文件时读取它一样

然后,我尝试随机访问该文件。此时,我编写了如下代码:

for(int i=0; i<tableName.length(); i++){
    file.writeChar(tableName.charAt(i));
}

for(int i=0;作为字节的字母“a”仍然是“a”。你是说加密你的文本文件吗?如果它仍然是“a”,那么为什么它写为[NUL]a[NUL]b[NUL]c[NUL]d在我第二次尝试中,使用RandomAccessFile?我想我要找的不是加密,因为当我将我的txt文件提供给其他人时,他们必须使用readByte或类似的东西来读取。如果我对其进行加密,我还需要告诉他们我使用了哪种加密。因为我首先写入2字节值,高字节,而您只提供低字节呃byte。你是说,如果我只想插入512字节长度的字符串,那么在.txt文件中,它总共是1024字节。请阅读。没有byte[]=字符串,字符的含义通常取决于编码。在本例中,Java将字符编码为2字节UTF-16编码。例外情况是8位代码取决于ASCII,如a、b、c、d字符,它们几乎总是相同的。您需要的是一个InputStreamReader和一个OutputStreamWriter,用于转换字节[]到一个编码。