Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在数据库中存储特殊字符_Java_Postgresql_File Upload_Csv - Fatal编程技术网

Java 在数据库中存储特殊字符

Java 在数据库中存储特殊字符,java,postgresql,file-upload,csv,Java,Postgresql,File Upload,Csv,我在JAVA中有一个上传功能,可以使用CSV文件将数据导入postgresql 9.2数据库。目前的数据是: ID, DESCRIPTION, PRICE, EOR 1001, "Lenovo Laptop" 20% Discount @ Jackson's Street, 500$, EOR 1002, "Samsung Laptop" 10% Discount @ Jackson's Street, 440.90$, EOR string description = line[1]; 现

我在JAVA中有一个上传功能,可以使用CSV文件将数据导入postgresql 9.2数据库。目前的数据是:

ID, DESCRIPTION, PRICE, EOR
1001, "Lenovo Laptop" 20% Discount @ Jackson's Street, 500$, EOR
1002, "Samsung Laptop" 10% Discount @ Jackson's Street, 440.90$, EOR

string description = line[1];

现在,当我试图将描述字段值存储到数据库中时,它抛出了错误。我是否可以将这些数据以CSV文件的形式存储到数据库中?

这真是奇怪的伪CSV。通常,包含双引号的记录将对其进行转义,或将其用另一组引号环绕整个记录


您可能需要覆盖
copy
命令中的引号字符,以便Pg不会将双引号解释为CSV引号。

通常在上载过程中不会引发任何错误。如果它真的因为特殊角色而抛出任何错误,那只是因为Craig Ringer提到的原因。您可以通过创建如下自定义函数来避免这种情况:

removeSpecialCharacter(String inputStr) {
   inputStr = inputStr.replace('"', '');
}

但您可能会面临从数据库中提取这个特殊字符并使用它的问题。若要在浏览器中显示这些特殊字符,需要对特殊字符使用转义方法。特殊字符转义的详细过程如下所示

我不确定,但这可能与Lenevo笔记本电脑和三星笔记本电脑周围的
有关。我猜您必须使用转义字符。可能是
。它会抛出哪个错误?一些代码也可能有帮助。。。