java如何分割大尺寸。将txt文件数据分成小部分并插入数据库?
下面是我读取和拆分文本文件内容的代码
try {
br = new BufferedReader(new FileReader("F:\\Test.txt"));
final char[] cbuf = new char[2048];
final int length = br.read(cbuf);
cbuf[length] = '@';
String packet = new String(cbuf, 0, length + 1);
final String[] splitedPacket=packet.split("@");
for(int i=0;i<splitedPacket.length;i++)
{
if(splitedPacket[i].contains("POS"))
{
System.out.println(splitedPacket[i]+"@");
preparedstatement=connection.prepareStatement("insert into inserttextfile([file]) values(?)");
preparedstatement.setString(1, splitedPacket[i]+"@");
preparedstatement.executeUpdate();
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)br.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
它在我的小尺寸中工作得很好。txt文件,但如果我使用超过30 MB的文本文件,我会得到数组索引超出绑定的异常
那么如何拆分和读取这种类型的。txt文件并插入数据库? (尤其需要拆分大文件(例如从30MB拆分为5MB)并插入数据库) 请在这个问题上指导我
# 1 楼答案
# 2 楼答案
通过不使用readLine,您可以很难做到这一点