java吧 关注:1,304,944贴子:12,870,567
  • 50回复贴,共1

一个简单的io问题

只看楼主收藏回复

D盘下有个1.txt,然后用这个程序运行,OutputStream和InputStream都操作这个文件夹,当outputStream以append方式打开是,inputStream能读取到数据,但是append为false时读取不到数据。都是先读取再写入
下面是代码:
package javaIO;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class io {
public static void main(String[] args) {
InputStream streamInput = null;
OutputStream outputStream = null;
byte buffer[] = new byte[1000];
int a = 0;
int token = 0;
try {
streamInput = new FileInputStream(new File("D:\\1.txt"));
outputStream = new FileOutputStream(new File("D:\\1.txt"), false);
while ((token = streamInput.read(buffer)) != -1) {
a++;
System.out.print(new String(buffer, 0, token));
}
System.out.println(a);
outputStream.write(new String("\n测试文本").getBytes());
streamInput.close();
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
System.out.println(e);
}
}
}
如果先写入,再读取,是能够读取到数据的


来自Android客户端1楼2015-12-22 11:24回复
    但是如果先读取数据,在实例化outputStream,再写入,是正常的(好吧,鬼都知道正常)


    来自Android客户端2楼2015-12-22 11:26
    回复
      2026-06-25 10:42:40
      广告
      不感兴趣
      开通SVIP免广告
      没人理么


      来自Android客户端3楼2015-12-22 11:30
      回复
        😭


        来自Android客户端4楼2015-12-22 12:44
        回复
          @于春停


          来自Android客户端5楼2015-12-22 13:08
          回复
            @TTHHR


            来自Android客户端6楼2015-12-22 13:09
            回复
              @java8080点com


              来自Android客户端7楼2015-12-22 13:09
              回复
                好难


                来自iPhone客户端9楼2015-12-22 13:38
                收起回复
                  2026-06-25 10:36:40
                  广告
                  不感兴趣
                  开通SVIP免广告
                  最好别同时读写


                  IP属地:山西10楼2015-12-22 13:42
                  收起回复
                    我知道不能这么做,我只是想知道为啥不能


                    来自Android客户端11楼2015-12-22 13:45
                    回复
                      @swing


                      来自Android客户端12楼2015-12-22 13:47
                      回复
                        @77jubao 这样呀,就帮我搞定这个吧


                        来自Android客户端13楼2015-12-22 13:49
                        收起回复
                          我知道了在实例化outputStream时,直接清空了文本


                          来自Android客户端14楼2015-12-22 13:58
                          收起回复


                            来自Android客户端16楼2015-12-22 18:40
                            收起回复