本帖最后由 邱成 于 2012-9-6 09:02 编辑
package com.yn.test;
import java.io.*;
import java.io.BufferedInputStream;
import java.io.IOException;
public class TestIo {
/**
* @param args
*/
public static void main(String[] args) {
try{
FileInputStream fis =
new FileInputStream("d:\\123\\TestIo.java");
BufferedInputStream bis =
new BufferedInputStream(fis);
int c = 0;
System.out.println(bis.read());
System.out.println(bis.read());
bis.mark(100);
for(int i=0; i<=10 && (c=bis.read())!=-1; i++) {
System.out.print((char)c + " ");
}
System.out.println();
bis.reset();
for(int i=0; i<=10 && (c=bis.read())!=-1; i++) {
System.out.print((char)c + " ");
}
bis.close();
}catch (IOException e) {
e.printStackTrace();
}
}
}
输出结果:
112
97
c k a g e c o m . y
c k a g e c o m . y
为什么我的b.mark(100);没起作用???
就算改成其他数值也是一样的输出,根本没有定位到第100个字符并从100个字符开始输出呀?根本就是从第一个字符开始的,为什么??? |