import java.io.*;
import java.util.Scanner;
import java.io.File;
import java.io.FileInputStream;
import java.util.Iterator;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class split {
public static void main(String args[]) {
try {
String inputfile = "E:/Sumit/csv-splitting-2/Proposal_Details__c.csv";
System.out.println("Input Path is :- " + inputfile);
double nol = 100000.0;
File file = new File(inputfile);
Scanner scanner = new Scanner(file);
int count = 0;
while (scanner.hasNextLine()) {
scanner.nextLine();
count++;
}
System.out.println("Lines in the file: " + count);
double temp = (count / nol);
int temp1 = (int) temp;
int nof = 0;
if (temp1 == temp) {
nof = temp1;
} else {
nof = temp1 + 1;
}
System.out.println("No. of files to be generated :" + nof);
FileInputStream fstream = new FileInputStream(inputfile);
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
for (int j = 1; j <= nof; j++) {
String outputpath = "E:/Sumit/csv-splitting-2/";
String outputfile = "File-2-Proposal_Details__c" + j + ".csv";
System.out.println(outputpath + outputfile);
FileWriter fstream1 = new FileWriter(outputpath + outputfile);
BufferedWriter out = new BufferedWriter(fstream1);
for (int i = 1; i <= nol; i++) {
strLine = br.readLine();
if (strLine != null) {
out.write(strLine);
if (i != nol) {
out.newLine();
}
}
}
out.close();
}
in.close();
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
}
}
}
假设您的第一行是头,您可以有一个字符串头;
来获取第一行的读数,例如:header=br.readline();
。
在nof
(我假定这意味着number_of_files
)的for循环中,创建新文件时总是将头作为第一行添加。
应该是这样的:
请看下面这个数据文件的架构 > 问题1:我需要将第一列数据分成两列,这样整数数据应该在一列中,数组数据应该在另一列中。不确定如何在Spark/Scala中实现?任何关于这一点的指示都将是有帮助的。 当我试图将此数据文件写入csv文件时,我得到了以下错误
问题内容: 我已经将CSV文件(大约10,000行;每行具有300列)存储在LINUX服务器上。我想将此CSV文件分解为500个CSV文件,每个文件20条记录。(每个具有与原始CSV中相同的CSV标头) 有什么linux命令可以帮助这种转换吗? 问题答案: 使其成为一个函数。您现在可以打电话 发现于:http : //edmondscommerce.github.io/linux/linux-sp
给定一个文件夹,其中包含多个具有不同列长度的csv文件 必须使用python将它们合并到单个csv文件中,并将文件名打印为一列。 输入:https://www.dropbox.com/sh/1mbgjtrr6t069w1/AADC3ZrRZf33QBil63m1mxz_a?dl=0 输出:
问题内容: 是否有任何适用于Node.js的Amazon S3客户端库,允许列出S3存储桶中的所有文件? 最著名的aws2js和knox似乎没有此功能。 问题答案: 实际上,aws2js支持通过方法调用以较低级别列出存储桶中的对象。为此,必须传递在Amazon S3 REST API页面 上记录的参数: 上面片段中的变量包含存储桶中所有对象的列表。
问题内容: 如何将逗号分隔的字符串拆分为存储过程中的字符串,并将其插入表字段中? 使用Firebird 2.5 问题答案: 这里有一个示例如何分割字符串并将子字符串写入表中:
我正在使用Ubuntu,希望将一个包含图像的文件夹(30k图像)拆分为不同的文件夹。但是,我想对它们进行排序(而不仅仅是拆分成更小的子文件夹)。我有一个文件,其中包含图像的文件夹目标信息。该文件的结构如下: 123.jpg,1 124.jpg,2 125.jpg,3 这应该解释为:image 123.jpg到文件夹1,image 124.jpg到文件夹2,image 125.jpg到文件夹3。 在