设为首页 加入收藏

TOP

Java从文件指定位置开始读取文件流
2014-11-24 02:29:32 来源: 作者: 【 】 浏览:1
Tags: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); //得到指定位置的流


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


相关阅读:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux中程序执行的流程分析工具—.. 下一篇Java DATE类型日期转换为指定格式..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: