Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.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
有没有办法在文本字段的netbeans上自动将\符号转换为java中的/_Java - Fatal编程技术网

有没有办法在文本字段的netbeans上自动将\符号转换为java中的/

有没有办法在文本字段的netbeans上自动将\符号转换为java中的/,java,Java,是否有一种方法可以在文本字段的netbeans上自动将\符号转换为java中的/。其目的是将图像上载到数据库。我通过文件选择器获取图像位置,然后将位置(地址)输出到文本字段,用户只需点击按钮即可上传。基本上,我希望在设置AddressText之前,每隔\将字符串变量“info”转换为/ 我的代码是 int returnVal = fileChooser.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_O

是否有一种方法可以在文本字段的netbeans上自动将\符号转换为java中的/。其目的是将图像上载到数据库。我通过文件选择器获取图像位置,然后将位置(地址)输出到文本字段,用户只需点击按钮即可上传。基本上,我希望在设置AddressText之前,每隔\将字符串变量“info”转换为/

我的代码是

     int returnVal = fileChooser.showOpenDialog(this);

     if (returnVal == JFileChooser.APPROVE_OPTION) {
     File file = fileChooser.getSelectedFile();

        // What to do with the file, e.g. display it in a TextArea
       String info =file.getAbsolutePath();

       AddressText.setText(info);

      }

我使用DocumentListener做过类似的事情。当您获得更新时,您可以搜索/并替换它

文档侦听器有3种方法。您实际上只需要实现2-删除/删除一个,您可以将其留空


另一方面,当您收到文档已更改的消息时,您应该在文本字段上调用getText(),查找/替换字符,并使用修改后的文本调用setText

。。。stringMyPath.replaceAll(“\\”,“/”)


但是Java很好地处理了这个问题。

在Java中工作不一定非得是a/才行。有时使用/更方便,因为\在某些情况下必须转义,因为它有特殊的含义


听起来数据库要求您在生成插入或更新字符串时转义\个字符。你不应该这样做。您应该使用参数化查询。如果使用参数化查询,则不必转义文本,也不会容易受到SQL注入攻击。在Java中,您可以使用PreparedStatement对象来执行此操作。

为什么必须进行这样的转换?我仍然不明白您为什么要更改\for/@Traroth,因为它在为要上载到Java的文件构建远程url时很有用。Java的系统属性中有一个“file.separator”。不确定这是否是您正在寻找的内容,例如,您的计算机上的图像位置将是“C:\Images\test.jpg”,而在Java上,如果您将其“\n”写入新行,则必须是“C:/Images/test.jpg”。“\”似乎有不同的效果。如果我从数据库将信息写入,它必须始终是“/”谢谢你,你似乎明白我想要什么,我将如何使用文档Listener抱歉,甚至找不到你在说什么。当然有一个简单的问题way@user1456935我已经给了你答案。这取决于你如何努力实现它。只有当你想在用户键入“\”并将其转换为“/”时立即做出反应,这种方法才有意义,这样“\”就永远不会显示在屏幕上。从你的问题来看,这似乎不是你的要求。