java批量写入文件(java 批量)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
本篇文章给大家谈谈java批量写入文件,以及java 批量对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
- 1、java写多个xml到文件,
- 2、java中如何实现文件的批量读取并提取部分内容写入一个新文件。 单一文件读取写入参照补充
- 3、Java怎样往一个文件里多次写入数据
- 4、Java批量写文件速度越来越慢
- 5、java中如何实现文件的批量读取与写入
java写多个xml到文件,
你可以使用Java的Transformer API实现这一目的。 Transformer API(javax.xml.transform)提供了将XML文档转换为其他格式(如HTML、PDF、TEXT等)或保存为文件的功能。你可以使用Transformer API创建多个Transformer实例,并使用不同的Transfomer实例将多个XML文档写入单个或多个文件中。

java中如何实现文件的批量读取并提取部分内容写入一个新文件。 单一文件读取写入参照补充
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Testa
{
public static void main(String[] args)
{
//传入参数为文件目录
test("d:/a.txt");
}
public static void test(String filePath){
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(filePath));
} catch (FileNotFoundException e) {
e.printStackTrace();
return;
}
String []columnName = {"Id", "Name", "Languages", "Math", "English"}; //列名
int []courseIndexs = {2, 3, 4}; //课程对应的列
int i,j,index;
String line;
List students = new ArrayList();
//记录Id和总值,用于排序
List sortList = new ArrayList();
try {
br.readLine(); //去掉第一行
while((line = br.readLine()) != null){
index = 0;
String []se = line.split(" ");
Map student = new HashMap();
for(i = 0; i se.length; i++){
if("".equals(se[i])){
continue;
}
if(index = columnName.length){
continue;
}
student.put(columnName[index], se[i]);
index++;
}
//计算平均值,总值
double total = 0;
for(j = 0; j courseIndexs.length; j++){
total += Double.parseDouble((String) student.get(columnName[courseIndexs[j]]));
}
double average = total / courseIndexs.length;
//只取一位小数
average = Math.round(average * 10)/10;
student.put("Total", total);
student.put("Average", average);
Map sort = new HashMap();
sort.put("Id", student.get("Id"));
sort.put("Total", student.get("Total"));
sortList.add(sort);
students.add(student);
}
br.close();
//排序
for(i = 0; i sortList.size(); i++){
for(j = i + 1; j sortList.size(); j++){
if((Double)sortList.get(i).get("Total") (Double)sortList.get(j).get("Total")){
Map temp = sortList.get(i);
sortList.set(i, sortList.get(j));
sortList.set(j, temp);
}
}
}
Map sortedId = new HashMap();
for(i = 0; i sortList.size(); i++){
sortedId.put(sortList.get(i).get("Id"), i+1);
}
//设定序号
for(j = 0; j students.size(); j++){
students.get(j).put("Order", sortedId.get(students.get(j).get("Id")));
}
//输出(写到原文件)
//PrintWriter pw = new PrintWriter(new File(filePath));
//输出(写到其他文件)
PrintWriter pw = new PrintWriter(new File("D:/b.txt"));
pw.println("Id\tName\tLan\tMath\tEnglish\tAverage\tTotal\tSort");
int cIndex;
for(i = 0; i students.size(); i++){
Map st = students.get(i);
cIndex = 0;
pw.println(st.get(columnName[cIndex++]) + "\t" + st.get(columnName[cIndex++])
+ "\t" + st.get(columnName[cIndex++])+ "\t" + st.get(columnName[cIndex++])
+ "\t" + st.get(columnName[cIndex++])
+ "\t" + st.get("Total")
+ "\t" + st.get("Average")
+ "\t" + st.get("Order"));
}
pw.flush();
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Java怎样往一个文件里多次写入数据
所以你写csv表格,这么做就可以了,每写一列就加一个,就是第二列。
距离有个bufferwriter
writer对象要写一个csv文件。
writer.wrtie("第一列");
writer.write(",");
writer.write("第二列");
这就是一个简单的用,分割的csv文件。
Java批量写文件速度越来越慢
可能是你频繁创建并写文件导致磁盘跟不上了吧..,你在for循环里面加个Thread.sleep(1000),每个文件的复制时间应该不会出超过1秒的了.另外我用固态硬盘试了试,后面几个也会变慢,不过好一点,300多ms.
java中如何实现文件的批量读取与写入
你可以将所有图片的名字放在一个数组中,然后循环该数组,在循环中调用转换图片的方法:
String[] names={"1.jpg","2.jpg","3.jpg"};
for(String name:names)handle(name);
假如说你的文件名的命名有一定的规律,就像上面的数组一样,就可以直接循环,然后在循环体中自己生成文件名:
for(int i=1;i=40;i++){
name=i+".jpg";
handle(name);
}
关于java批量写入文件和java 批量的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
