如何使用 FileInputStream 流形式进行 JAVA 文件切分存储操作?

2026-06-10 05:461阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计266个文字,预计阅读时间需要2分钟。

如何使用 FileInputStream 流形式进行 JAVA 文件切分存储操作?

javapackage stream;import java.io.*;

/** * 简单的文件读取示例 * @author 作者 */public class TestStream { public static void main(String[] args) throws IOException { File file=new File(D:/stream/note.txt); FileInputStream fileInputStr=new FileInputStream(file); }}

package stream;
import java.io.*;
/**
* @author*/
public class TestStream {
public static void main(String[] args) throws IOException {
// *********************** read
File file = new File("D:/stream/note.txt");
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(file);
long length = file.length();
int size = 3*1024;
byte[] bytes = new byte[size];
int count = 0;
if (length<=size) {
// 一次存储
myWrite(fileInputStream,bytes,0,size,0);
} else {
// 分段存储
for (long i = length; i > 0; i--) {
if (i % size==0) {
count++;
myWrite(fileInputStream,bytes,0,size,count);
}
if (i == 1 && length % size!=0){
// 处理剩余的 。
size = (int) (length - size*count);
bytes = new byte[size];
count++;
myWrite(fileInputStream,bytes,0,size,count);
}
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
fileInputStream.close();
}
}
public static void myWrite(FileInputStream fileInputStream,byte[] bytes,int index,int size,int count) throws IOException {
fileInputStream.read(bytes, index, size);
File wroteFile = new File("D:/stream/wrote-"+count+".txt");
wroteFile.delete();
FileOutputStream fileOutputStream = new FileOutputStream(wroteFile);
fileOutputStream.write(bytes);
}
}


如何使用 FileInputStream 流形式进行 JAVA 文件切分存储操作?


本文共计266个文字,预计阅读时间需要2分钟。

如何使用 FileInputStream 流形式进行 JAVA 文件切分存储操作?

javapackage stream;import java.io.*;

/** * 简单的文件读取示例 * @author 作者 */public class TestStream { public static void main(String[] args) throws IOException { File file=new File(D:/stream/note.txt); FileInputStream fileInputStr=new FileInputStream(file); }}

package stream;
import java.io.*;
/**
* @author*/
public class TestStream {
public static void main(String[] args) throws IOException {
// *********************** read
File file = new File("D:/stream/note.txt");
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(file);
long length = file.length();
int size = 3*1024;
byte[] bytes = new byte[size];
int count = 0;
if (length<=size) {
// 一次存储
myWrite(fileInputStream,bytes,0,size,0);
} else {
// 分段存储
for (long i = length; i > 0; i--) {
if (i % size==0) {
count++;
myWrite(fileInputStream,bytes,0,size,count);
}
if (i == 1 && length % size!=0){
// 处理剩余的 。
size = (int) (length - size*count);
bytes = new byte[size];
count++;
myWrite(fileInputStream,bytes,0,size,count);
}
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
fileInputStream.close();
}
}
public static void myWrite(FileInputStream fileInputStream,byte[] bytes,int index,int size,int count) throws IOException {
fileInputStream.read(bytes, index, size);
File wroteFile = new File("D:/stream/wrote-"+count+".txt");
wroteFile.delete();
FileOutputStream fileOutputStream = new FileOutputStream(wroteFile);
fileOutputStream.write(bytes);
}
}


如何使用 FileInputStream 流形式进行 JAVA 文件切分存储操作?