Java从文件指定位置开始读取文件流


Java从文件指定位置开始读取文件流

文件任意位置读取
一般有两种方法:
1、使用FileInputStream类 , skip指定位置
2、使用RandomAccessFile类,seek指定位置

此处先说一下第一种方法,直接看测试代码:

public static void read(){
long from = 4+1;//从该字节开始读,自己测注意中文是两个字节
try{
File file = new File("d:\\文件上传\\ss.txt");
FileInputStream bis=new FileInputStream(file);
bis.skip(from-1);//文件指向前一字节
@SuppressWarnings("resource")
//指定文件位置读取的文件流
InputStream sbs = new BufferedInputStream(bis);
//存入文件,以便检测
File file1=new File("d:\\文件上传\\ss1.txt");
OutputStream os=null;
try
{
os=new FileOutputStream(file1);
byte buffer[]=new byte[4*1024];
int len = 0;
while((len = sbs.read(buffer)) != -1)//
{
os.write(buffer,0,len);
}
os.flush();
}catch(Exception e){
e.printStackTrace();
}finally{
try {
os.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}catch(FileNotFoundException e){
e.printStackTrace();
}catch(IOException e){
e.printStackTrace();
}finally{
}
}

 
主要代码:
   
          long from = 4+1;//从该字节开始读,自己测注意中文是两个字节
          File file = new File("d:\\文件上传\\ss.txt");
          FileInputStream bis=new FileInputStream(file);
          bis.skip(from-1);//文件指向前一字节

          @SuppressWarnings("resource")
          //指定文件位置读取的文件流
          InputStream sbs = new BufferedInputStream(bis); //得到指定位置的流

也可以获得指定长度的文件
第二种方法后续上传

  • Java操作XML文件--读取内容
  • Java操作XML文件--修改节点
  • Java操作XML文件--读取内容
  • Java读取WEB-INF目录下的properties配置文件
  • Java文件定位读取

相关内容

    暂无相关文章