I'm importing a CSV file to MySQL database. This can be done using java.mysql
support for forward slash in file path. If user gives the path
c:\upload\date\csv\sample.csv
MySQL doesn't support this type of path pattern. I want to search for backslashes in the path and replace them with a forward slash, to give this:
c:/upload/date/csv/sample.csv
How is that done?
Press \/ to change every backslash to a forward slash, in the current line. Press \\ to change every forward slash to a backslash, in the current line.
str = str. replace("\\", ""); replaceAll() treats the first argument as a regex, so you have to double escape the backslash. replace() treats it as a literal string, so you only have to escape it once.
Replacing a Single Backslash( \ ) With a Double Backslash( \\ ) Using the replaceAll() Method. This is another solution that you can use to replace the backslashes. Here, we used the replaceAll() method that works fine and returns a new String object.
In java, use this:
str = str.replace("\\", "/");
Note that the regex version of replace, ie replaceAll()
, is not required here; replace()
still replaces all occurrences of the search term, but it searches for literal Strings, not regex matches.
The String.replace(CharSequence, CharSequence) example provided by @PaulPRO and @Bohemian will work, but its better to use the String.replace(char, char) version. Slightly faster. Though you won't have a noticeable speed difference, its better to do such optimisations where possible.
String replacedStr = str.replace('\\', '/');
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With