gpt4 book ai didi

Java sql 去掉括号

转载 作者:行者123 更新时间:2023-12-01 13:42:32 24 4
gpt4 key购买 nike

这是我收到的输出:

INSERT INTO [ J] VALUES ([J1, Sorter, Paris)
INSERT INTO [ J] VALUES (J2, Punch, Rome)
INSERT INTO [ J] VALUES (J3, Reader, Athens)
INSERT INTO [ J] VALUES (J4, Console, Athens)
INSERT INTO [ J] VALUES (J5, Collator, London)
INSERT INTO [ J] VALUES (J6, Termninal, Oslo)
INSERT INTO [ J] VALUES (J7, Tape, London])

正如你所看到的,我在开头有一个 [ ,在结尾有一个 ] ,我不知道是什么原因造成的?我怎样才能删除它?我尝试用 .replace("[ ]",""); 进行正则表达式我相信问题正在发生,但无济于事。

插入代码:

  if (state == 3||!tableLineScanner.hasNextLine()){
try{
Class.forName("org.sqlite.JDBC");
Connection conn = null;
conn = DriverManager.getConnection("jdbc:sqlite:test.db");
//TODO Input values goes here
tableName =""+tableNames;
Statement stmt = conn.createStatement();
String query = tableValues + "";
ResultSet rs = stmt.executeQuery("SELECT * FROM "+ tableName);
ResultSetMetaData rsmd = rs.getMetaData();
query.replaceAll("[ ]","");
tableName =""+tableNames;
tableName.replaceAll("[ ]","");
String[] splittedOutput = query.split(", ");
int valuesOnLine = rsmd.getColumnCount();
for (int i = 0; i < splittedOutput.length; i++) {
if (i % valuesOnLine == 0) {
System.out.print("INSERT INTO " + tableName + " VALUES (");
}
System.out.print(splittedOutput[i]);
if (i % valuesOnLine == valuesOnLine - 1) {
System.out.println(")");
} else {
System.out.print(", ");
}
}
tableNames.clear();
tableValues.clear();
tableFields.clear();
}
catch (SQLException ex){
System.out.println("SQLException: " + ex.getMessage());
System.out.println("VendorError: " + ex.getErrorCode());
}
catch (ClassNotFoundException e){
e.printStackTrace();
}
}

最佳答案

如果 tableNames 中有多个元素,您将会遇到更多问题。您打算只使用第一个表名吗?或者使用所有的 tableNames 进行迭代?现在,您正在将 tableNames 转换为 [element1, element2, element3] 形式的字符串,这几乎肯定不是您想要的。

如果您确实只想删除 [] 字符,则需要编写类似 replaceAll("[\\[\\]]", "") 因为 [] 是正则表达式中的特殊字符。

关于Java sql 去掉括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20598635/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com