使用Byte[]Java打印输出

使用Byte[]Java打印输出,java,Java,我在使用FileOutputStream.write时遇到问题。我猜它不允许我使用字符串写入文件,所以我尝试将字符串更改为基本数据类型Byte[]。现在,当我尝试打印它时,使用下面的for循环,它打印结果的次数与输入的长度相同 假设我有21345,而不是仅仅打印出21345,如果打印出以下内容: 21345 21345 21345 21345 21345 for(int a=0; a<machineWord.length(); a++){ byte[] input = machin

我在使用FileOutputStream.write时遇到问题。我猜它不允许我使用字符串写入文件,所以我尝试将字符串更改为基本数据类型Byte[]。现在,当我尝试打印它时,使用下面的for循环,它打印结果的次数与输入的长度相同

假设我有21345,而不是仅仅打印出21345,如果打印出以下内容:

21345
21345
21345
21345
21345

for(int a=0; a<machineWord.length(); a++){
    byte[] input = machineWord.getBytes();
    out.write(input);
}

for(int a=0;a,因为每次循环遍历字符串中的每个字符并将字符串写入文件。
getBytes()
方法返回字符串的
byte[]
数组表示形式。只需写入一次

// write the String to the file.
out.write(machineWord.getBytes());

哪个…有意义?它只是做你想做的事情你可以把字符串写到文件中,看:它做你想做的事情…它不需要for循环…只要保持循环体…你在写它
长度
倍这里长度是5,所以它写5倍。。。