java中如何转义文件路径中的反斜杠和自动生成的转义字符

2024-01-07

我有一个非常小而简单的问题,但我没有得到解决方案。 实际上我正在使用文件选择器获取 CSV 文件路径。 我使用加载数据本地 infile 查询将此 csv 文件中的数据输入到数据库中。

假设我输入的文件路径是“C:\title.csv” 当我将此字符串放入查询中时,您将在路径中看到 \t 组合。这个 \t 实际上是文件路径的一部分,而不是转义字符 '\t'。但java和mysql认为它是转义字符。

然后我尝试使用以下代码行将文件路径字符串中的“\”替换为“\\”。

String filepath="C:\title.csv";
String filepath2=filepath.replace("\\","\\\\");

仍然对文件路径没有影响,并且仍然将 '\t' 视为转义字符。

那么我的问题是如何在不更改文件名的情况下解决这个问题?

如果我们有这样的路径

String filepath="C:\new folder\title.csv";

它将把 \n 和 \t 视为转义字符。 如果路径中的文件或文件夹的名称导致转义字符,如何解决此问题?


在 Java 中使用双斜杠字符串字面量转义斜杠:

String s = "c:\\new folder\\title.csv";

如果最终用户在 JFileChooser 中输入字符串,则字符串变量将包含用户输入的所有字符。仅当在 Java 源代码中使用字符串文字时才需要转义。

并使用准备好的语句将字符串插入数据库表中。这将正确转义特殊字符并避免SQL注入 http://en.wikipedia.org/wiki/SQL_injection攻击。阅读有关准备好的语句的更多信息关于 JDBC 的 Java 教程 http://download.oracle.com/javase/tutorial/jdbc/basics/prepared.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java中如何转义文件路径中的反斜杠和自动生成的转义字符 的相关文章

  • Eclipse 在源代码管理中保存操作

    我们希望找到一种在签入之前执行代码标准的 轻量级 方法 我们真的很喜欢使用 Eclipse 内置的想法保存操作 go to Preferences gt gt Java gt gt Editor gt gt Save Actions 其中有
  • Hibernate注解放置问题

    我有一个我认为很简单的问题 我见过两种方式的例子 问题是 为什么我不能将注释放在字段上 让我举一个例子 Entity Table name widget public class Widget private Integer id Id G
  • 在文本文件中写入多行(java)

    下面的代码是运行命令cmd并使用命令行的输出生成一个文本文件 下面的代码在 Eclipse 的输出窗口中显示了正确的信息 但在文本文件中只打印了最后一行 谁能帮我这个 import java io public class TextFile
  • 插入最大日期(独立于数据库)

    在我的本地设置中 我使用一个简单的 H2 数据库 托管 解决方案将有另一个 类似但不相同 数据库 我需要将最大可能日期插入到日期时间列中 我尝试使用 Instant MAX 但是 这会导致列中出现 169104626 12 11 20 08
  • 正则表达式拆分数字和字母组,不带空格

    如果我有一个像 11E12C108N 这样的字符串 它是字母组和数字组的串联 如何在中间没有分隔符空格字符的情况下分割它们 例如 我希望分割结果为 tokens 0 11 tokens 1 E tokens 2 12 tokens 3 C
  • Android在排序列表时忽略大小写

    我有一个名为路径的列表 我目前正在使用以下代码对字符串进行排序 java util Collections sort path 这工作正常 它对我的 列表进行排序 但是它以不同的方式处理第一个字母的情况 即它用大写字母对列表进行排序 然后用
  • 使用 AES SecretKey 的 Java KeyStore setEntry()

    我目前正在 Java 中开发一个密钥处理类 特别是使用 KeyStore 我正在尝试使用 AES 实例生成 SecretKey 然后使用 setEntry 方法将其放入 KeyStore 中 我已经包含了代码的相关部分 The KS Obj
  • Hazelcast 分布式锁与 iMap

    我们目前使用 Hazelcast 3 1 5 我有一个简单的分布式锁定机制 应该可以跨多个 JVM 节点提供线程安全性 代码非常简单 private static HazelcastInstance hInst getHazelcastIn
  • Java 8 流 - 合并共享相同 ID 的对象集合

    我有一系列发票 class Invoice int month BigDecimal amount 我想合并这些发票 这样我每个月都会收到一张发票 金额是本月发票金额的总和 例如 invoice 1 month 1 amount 1000
  • 使用 SQLITE 按最近的纬度和经度坐标排序

    我必须获得一个 SQLite SQL 语句 以便在给定初始位置的情况下按最近的纬度和经度坐标进行排序 这是我在 sqlite 数据库中的表的例句 SELECT id name lat lng FROM items EXAMPLE RESUL
  • 很好地处理数据库约束错误

    再一次 它应该很简单 我的任务是在我们的应用程序的域对象中放置一个具有唯一约束的特定字段 这本身并不是一个很大的挑战 我刚刚做了以下事情 public class Location more fields Column unique tru
  • 普罗米修斯指标 - 未找到

    我有 Spring Boot 应用程序 并且正在使用 vertx 我想监控服务和 jvm 为此我选择了 Prometheus 这是我的监控配置类 Configuration public class MonitoringConfig Bea
  • 有没有一种快速方法可以从 Jar/war 中删除文件,而无需提取 jar 并重新创建它?

    所以我需要从 jar war 文件中删除一个文件 我希望有类似 jar d myjar jar file I donot need txt 的内容 但现在我能看到从 Linux 命令行执行此操作的唯一方法 不使用 WinRAR Winzip
  • 欧洲中部时间 14 日 3 月 30 日星期五 00:00:00 至 日/月/年

    我尝试解析格式日期Fri Mar 30 00 00 00 CET 14至 日 月 年 这是我的代码 SimpleDateFormat formatter new SimpleDateFormat dd MM yyyy System out
  • Jersey 客户端请求中未设置 Content-Length-Header

    我正在使用 Jersey Client 访问网络服务 如下所示 response r accept MediaType TEXT PLAIN TYPE header content length 0 post String class 其中
  • Netty:阻止调用以获取连接的服务器通道?

    呼吁ServerBootstrap bind 返回一个Channel但这不是在Connected状态 因此不能用于写入客户端 Netty 文档中的所有示例都显示写入Channel从它的ChannelHandler的事件如channelCon
  • 替换后增量

    我自己已经有一个问题了 但我想扩展它后增量示例 https stackoverflow com questions 51308967 post increment with example char a D int b 5 System o
  • javafx android 中的文本字段和组合框问题

    我在简单的 javafx android 应用程序中遇到问题 问题是我使用 gradle javafxmobile plugin 在 netbeans ide 中构建了非常简单的应用程序 其中包含一些文本字段和组合框 我在 android
  • 为什么C++代码执行速度比java慢?

    我最近用 Java 编写了一个计算密集型算法 然后将其翻译为 C 令我惊讶的是 C 的执行速度要慢得多 我现在已经编写了一个更短的 Java 测试程序和一个相应的 C 程序 见下文 我的原始代码具有大量数组访问功能 测试代码也是如此 C 的
  • 如何从 Maven 存储库引用本机 DLL?

    如果 JAR 附带 Maven 存储库中的本机 DLL 我需要在 pom xml 中放入什么才能将该 DLL 放入打包中 更具体地举个例子Jacob http search maven org artifactdetails 7Cnet s

随机推荐

  • 使用生成的匿名登录 ID 登录用户

    我正在编写一个 Android 应用程序 我正在尝试让用户匿名登录 这样他们就不必经历任何类型的注册过程 我将他们的匿名用户 ID 存储在共享首选项中 当应用程序打开时 我尝试根据该用户 ID 登录他们 我试图找出执行此操作的正确方法 因为
  • Centos htaccess 不被读取

    我正在开发一台新服务器 并通过 yum 安装了 Web Server 组 Php 和 mysql 工作正常 但我无法让 htaccess 工作 这是我的测试 htaccess 文件 WASD TEST CALL ERROR 我将其作为 ht
  • 简单的 IPython 示例在 sys.exit() 上引发异常

    我正在 IPython 中做一些非常简单的 PySide 和 PyQt 教程 一个教程只是创建一个带有一些滑块的窗口来演示插槽和信号 当我关闭正在运行的演示应用程序的窗口时 我看到以下错误 An exception has occurred
  • 访问在缓存块 Rmarkdown 文档中创建的全局环境对象

    我想运行 R 脚本来运行模拟并缓存 Rmarkdown 文档的结果 我正在使用 Rstudio 并尝试使用 knit HTML 创建 HTML 报告 这是一个简单的示例 r test global env cache TRUE print
  • 局部静态和局部变量的内存分配

    1 void main void int ptr1 ptr1 int malloc 2 void main void static int ptr2 ptr2 int malloc 我想问ptr1和ptr2的内存分配是如何完成的 The p
  • 如何在VBA中将自动生成的单选按钮设置为true?

    我正在创建一个 Excel 工作表 其中根据特定参数的值自动生成单选按钮 请参阅此以获得清晰的理解 复制一组单选按钮n次数 在哪里n是引用参数的行数 应根据条件检查此自动生成矩阵中的每个单选按钮 并且在与条件匹配的一组中 十二个单选按钮之一
  • CSS 中的 HTML 注释?

    我正在查看一些Amazon http en wikipedia org wiki Amazon com的 CSS 并注意到他们用 HTML 注释掉了 CSS 的一大块 我知道 Internet Explorer 具有 HTML 注释的条件格
  • “项目覆盖率设置为 0%” – JaCoCo 和 Sonar 在 Jenkins 中与 Ant

    我将工作从单个 Hudson 机器转移到了多从机 Jenkins 环境 现在 JaCoCo 覆盖范围不再起作用 工作 旧 哈德森2 0 1 詹金斯声纳插件 1 7 1 声纳2 1 2 破损 新 詹金斯 1 446 詹金斯声纳插件 1 7 2
  • Woocommerce 管理员订单详细信息 - 在订单详细信息页面上显示自定义数据

    我已经搜索并尝试了两天 但没有成功 请帮忙 我想过滤 woocommerce 订单 以根据产品属性将附加详细信息从数据库添加到订单详细信息页面 但我找不到适合此任务的 woocommerce 操作 过滤器挂钩 这里假设我有变量 is cus
  • 单应性估计 -> 结果是仿射矩阵?

    我正在开发一个基于平面标记的姿态估计系统 使用 Matlab 为了做到这一点 我检测网络摄像头捕获的图像中的一个矩形 获取 4 个角点的坐标 并计算这些角点之间齐次坐标的单应性 例如 58 46 75 90 M 67 108 133 89
  • 为什么此 SPARQL 查询没有返回任何结果?

    通过运行此查询DBpedia SPARQL 端点 http dbpedia org sparql给我带来了很多结果 与institution列填充 select person field institution where person a
  • 为什么 Cortex-A 的复位处理程序位于 0x0 而 Cortex-M3 则不然

    Cortex M3 的初始堆栈指针值位于 0x0 复位处理程序位于 0x4 原因是什么 这样做的设计理由是什么 为什么 ARM 人员不能像 Cortex A 那样将 0x0 留给复位处理程序 然后在复位处理程序内初始化 SP 我认为这属于
  • 使用 SQLITE3 和 Objective C 转换 DATETIME 时出现问题

    我有一个 sqlite3 数据库 其中包含 DATETIME 列 其中包含格式如下的值 2013 01 09 04 00 00 我想弄清楚如何确定时间是上午还是下午 以下是我如何使用 Objective C 从 Sqlite3 DB 读取和
  • Puppeteer chrome 获得活动/可见选项卡

    在 Chrome 扩展中 您可以使用下面的命令来查找窗口中的活动选项卡 chrome tabs query currentWindow true active true 我有一个连接到现有浏览器并获取所有页面的以下代码 我无法确定是否有办法
  • Angularjs:复选框和 ng-change

    我无法理解 ng change 的工作原理 我有一份邀请参加拍卖的用户列表 我想用一个复选框来做到这一点 如果选中用户 则必须将其姓名保存到数组中 稍后我会邀请他们 我只知道该怎么做 但我不明白如何使用该复选框 我做了这样的事情 ul cl
  • 地图视图删除多个图钉

    我想在地图上显示用户位置并放置一个图钉 但我的应用程序放置了两个相距一定距离的图钉 我想知道当新图钉被放置时如何删除旧图钉 以便地图上应该有一个图钉我的代码是 MKAnnotationView mapView MKMapView mV vi
  • 如何安装rabbitmq管理插件(rabbitmq-plugins)

    简短的 有没有办法通过ubuntu包安装rabbitmq plugins Details 我的rabbitmq 在我的ubuntu 系统中运行正常 现在我正在尝试通过管理插件监控正在发生的情况 我正在按照rabbitmq com manag
  • 如何在 .vimrc 文件中“获取”某些内容?

    我最近一直在努力扩展我的 vim foo 并且遇到了几个插件 自动标记 vim http www vim org scripts script php script id 1343例如 要求它们在我的 vimrc 文件中 来源 这到底是什么
  • SQL DATETIME 从 Excel 插入?

    所以我遇到了一个相当奇怪的问题 我在Excel中有一个列 比如说A列 其中的数据如下所示 2015年4月11日 10 14 我还有很多其他列 但无论如何在 Excel 中的 SQL Insert 语句中 数据 复制时 如下所示 42105
  • java中如何转义文件路径中的反斜杠和自动生成的转义字符

    我有一个非常小而简单的问题 但我没有得到解决方案 实际上我正在使用文件选择器获取 CSV 文件路径 我使用加载数据本地 infile 查询将此 csv 文件中的数据输入到数据库中 假设我输入的文件路径是 C title csv 当我将此字符