关于合并多个文本文件到一个新的文本文件中 用java写的! 代码要写上!我用eclipse编译器!
importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;impor...
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.LinkedList;
public class together {
public static void main(String[] args) {
final int BUFFER_SIZE = 0x500000;
try {
File file = new File("123.txt");
FileOutputStream fos = new FileOutputStream(file);
FileInputStream fis1 = new FileInputStream(new File("text1.txt"));
FileInputStream fis2 = new FileInputStream(new File("text2.txt"));
FileInputStream fis3 = new FileInputStream(new File("text3.txt"));
byte[] b = new byte[BUFFER_SIZE];
while((fis1.read(b)) != -1)
{
fos.write(b); }
while((fis2.read(b)) != -1)
{
fos.write(b); }
while((fis3.read(b)) != -1)
{ fos.write(b);
}
fos.flush();
System.out.println("合并success!");
}catch (Exception e) {
System.out.println("error: " + e);
}
}
}//这是我写的单个三个文本的 要是很多的文本的话怎么用数组写!谢谢啦!!要详细点!新手呀~~ 展开
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.LinkedList;
public class together {
public static void main(String[] args) {
final int BUFFER_SIZE = 0x500000;
try {
File file = new File("123.txt");
FileOutputStream fos = new FileOutputStream(file);
FileInputStream fis1 = new FileInputStream(new File("text1.txt"));
FileInputStream fis2 = new FileInputStream(new File("text2.txt"));
FileInputStream fis3 = new FileInputStream(new File("text3.txt"));
byte[] b = new byte[BUFFER_SIZE];
while((fis1.read(b)) != -1)
{
fos.write(b); }
while((fis2.read(b)) != -1)
{
fos.write(b); }
while((fis3.read(b)) != -1)
{ fos.write(b);
}
fos.flush();
System.out.println("合并success!");
}catch (Exception e) {
System.out.println("error: " + e);
}
}
}//这是我写的单个三个文本的 要是很多的文本的话怎么用数组写!谢谢啦!!要详细点!新手呀~~ 展开
5个回答
展开全部
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class Together {
/**
* @param files 需要合并的多个文件数组
* @param target 合并后保存的目标文件
*/
public void fileMerge(File files[], File target) {
final int BUFFER_SIZE = 0x500000;
try {
FileOutputStream fos = new FileOutputStream(target);
byte[] b = new byte[BUFFER_SIZE];
for (int i = 0; i < files.length; i++) {
FileInputStream fis = new FileInputStream(files[i]);
while (fis.read(b) != -1) {
fos.write(b);
}
}
fos.flush();
System.out.println("合并success!");
} catch (Exception e) {
System.out.println("error: " + e);
}
}
}
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class Together {
/**
* @param files 需要合并的多个文件数组
* @param target 合并后保存的目标文件
*/
public void fileMerge(File files[], File target) {
final int BUFFER_SIZE = 0x500000;
try {
FileOutputStream fos = new FileOutputStream(target);
byte[] b = new byte[BUFFER_SIZE];
for (int i = 0; i < files.length; i++) {
FileInputStream fis = new FileInputStream(files[i]);
while (fis.read(b) != -1) {
fos.write(b);
}
}
fos.flush();
System.out.println("合并success!");
} catch (Exception e) {
System.out.println("error: " + e);
}
}
}
追问
合并后如何对里面的内容(包括时间)进行排序呢?要用正则表达式写吗?
追答
我只是直接按你之前给的代码改的,你要合并的文件有什么内容我都不知道,怎么可能排序啊
合并只是把需要合并的文件组内容依次导入到目标文件了,合并后要排序需要对文件里的信息进行解读比较麻烦,如若需要排序的话建议还是在合并之前做
展开全部
你使用eclipse的话用数组反而不好,建一个新的文件啊,代码全在一个文件里太多,看的麻烦,在SRC里建些文件,条例更清楚。我也是新手。。。。我也在做类似的题目
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
eclipse不是编译器
是IDE
是IDE
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个很简单啊,你用命令行方式输入你的文件的路径
不久可以了?上学的时候联系旧这样做的!
不久可以了?上学的时候联系旧这样做的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以将说要用的文件存到ArrayList下,然后对ArrayList读取,将合并文件写成一个方法,看了一下还有一点缺陷就是合并文件后有太多垃圾空间了,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询