Par*_*nak 9 java escaping filepath backslash
我有一个非常小而简单的问题,但我没有得到解决方案.实际上我正在使用文件选择器获取CSV文件路径.我使用load data local infile query将此csv文件中的数据输入到数据库中.
假设我输入的文件路径是"C:\ title.csv"当我将此字符串放入查询时,您将在路径中看到\ t组合.这个\ t实际上是文件路径的一部分而不是转义字符'\ t'.但java和mysql认为它是转义字符.
然后我尝试使用以下代码行将文件路径字符串中的'\'替换为"\\".
String filepath="C:\title.csv";
String filepath2=filepath.replace("\\","\\\\");
Run Code Online (Sandbox Code Playgroud)
仍然没有对文件路径的影响,它仍然认为'\ t'作为转义字符.
所以我的问题是如何在不更改文件名的情况下解决此问题?
如果我们有路径
String filepath="C:\new folder\title.csv";
Run Code Online (Sandbox Code Playgroud)
它会将\n和\ t视为转义字符.如果路径中的文件或文件夹的名称导致转义字符,如何解决此问题?
JB *_*zet 13
在Java 字符串文字中使用双斜杠来转义斜杠:
String s = "c:\\new folder\\title.csv";
Run Code Online (Sandbox Code Playgroud)
如果最终用户在JFileChooser中输入字符串,则字符串变量将包含用户输入的所有字符.只有在Java源代码中使用String文字时才需要转义.
并使用预准备语句将字符串插入数据库表.这将正确地转义特殊字符并避免SQL注入攻击.阅读有关JDBC的Java教程中有关预准备语句的更多信息.
| 归档时间: |
|
| 查看次数: |
84998 次 |
| 最近记录: |