我有一個.csv文件包含100k行,我使用mysql來生成該文件。 我想將該文件分割成更小的文件,每個文件包含3k行。 我該如何使用mysql或java?哪個更快? 我在java中找到了解決方案,但它使用緩衝區讀取器和緩衝區寫入器來處理O(n^2)。使用mysql分割.csv文件
在此先感謝。
我有一個.csv文件包含100k行,我使用mysql來生成該文件。 我想將該文件分割成更小的文件,每個文件包含3k行。 我該如何使用mysql或java?哪個更快? 我在java中找到了解決方案,但它使用緩衝區讀取器和緩衝區寫入器來處理O(n^2)。使用mysql分割.csv文件
在此先感謝。
用java你可以使用java.I寧願使用UNIX腳本中,我們使用的是在分割文件下面的例子拆分文件我們
public static void main(String[] args) throws IOException {
String src="C:\\Users\\sahug\\Downloads\\split\\dumps.txt";
String dest="C:\\Users\\sahug\\Downloads\\split\\";
String fileName="MyFile";
FileInputStream fis = new FileInputStream(str);
int size = 20;
byte buffer[] = new byte[size];
int count = 0;
while (true) {
int i = fis.read(buffer, 0, size);
if (i == -1)
break;
String filename = fileName + count;
FileOutputStream fos = new FileOutputStream(dest+filename);
fos.write(buffer, 0, i);
fos.flush();
fos.close();
++count;
}
}
請仔細閱讀[我可以問什麼議題有關(HTTP:// (http://stackoverflow.com/help/how-to-ask) 和[完美的問題](http:// codeblog .jonskeet.uk/2010/08/29/writing-the-perfect-question /) 以及如何創建[Minimal,Complete and Verifiable example](http://stackoverflow.com/help/mcve) – RiggsFolly
這是**最糟糕的是一個O(n)問題。這個所謂的O(n^2)解決方案是什麼? –
@KevinAnderson不是讀取緩衝區需要O(n)和外部需要O(n)? – RGB