向地平海进军 2022-03-29 09:04 采纳率: 100%
浏览 47
已结题

一个字节输入输出流问题,把一个图片复制粘贴到另一个地方

为啥第一个程序可以全部输出图片,第二个却只能输出一部分,只有扩大第二个数组第二个才能输出全部图片,另外第一个不是应该输出实际输入字节,但录入的应该只有1024啊,希望有人帮帮我以下是源码
package liu;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class tupianzhuanyi {
public static void main(String[] args) throws IOException {
FileInputStream q = new FileInputStream("C:\Users\xuan\Pictures\VRChat\2022-02\oi.png");
FileOutputStream w = new FileOutputStream("D:\yy\oi.png");
byte[] b = new byte[1024];
int ln;
while ((ln = q.read(b)) != -1) {
w.write(b,0,ln);
}
q.close();
w.close();
}

}
第二个程序
package liu;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class demo {
public static void main(String[] args) throws IOException {
FileInputStream q = new FileInputStream("C:\Users\xuan\Pictures\VRChat\2022-02\oi.png");
FileOutputStream w = new FileOutputStream("D:\yy\oi.png");
byte[] b = new byte[1024];
int ln = q.read(b);
w.write(b);

    q.close();
    w.close();
}

}

  • 写回答

2条回答 默认 最新

  • CSDN专家-sinJack 2022-03-29 09:09
    关注

    第二个不行,是因为你只读取了1024个字节长度。而且只读取了一次。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月30日
  • 已采纳回答 3月29日
  • 创建了问题 3月29日