String fname="C:\textfiles\db\query\query.txt";
это строка, которую мне нужно разбить.
Я пробовал с этим
String [] items=fname.split("\");
Но не работает.
String [] items=fname.split("\\"); also not working...
как разбить эту строку...
String fname="C:\textfiles\db\query\query.txt";
это строка, которую мне нужно разбить.
Я пробовал с этим
String [] items=fname.split("\");
Но не работает.
String [] items=fname.split("\\"); also not working...
как разбить эту строку...
Прежде всего, вы не можете иметь строку, о которой вы писали.
String fname="C:\textfiles\db\query\query.txt";
это должно быть заменено на
String fname="C:\\textfiles\\db\\query\\query.txt";
поскольку обратная косая черта ( "\" ) также нуждается в побеге.
Наконец, вам нужно сделать что-то вроде этого, чтобы разделить их:
String fname="C:\\textfiles\\db\\query\\query.txt";
String[] items= fname.split("\\\\");
System.out.println(Arrays.toString(items));
Надеюсь, что это поможет.
он работает.
String fname="C:\\textfiles\\db\\query\\query.txt";
String split[] = fname.split("\\\\");
System.out.println(" :: value " + split[0] );
'split' ожидает RegEx. Лучший способ использования split - использовать "Pattern.quote"
String separator = "\\";
String value = "C:\\Main\\text.txt";
String[] arrValues = value.split(Pattern.quote(separator));
public static String[] splitPath (String path) {
String backslash = ((char)92) + "";
if (path.contains(backslash)) {
ArrayList<String> parts = new ArrayList<>();
int start = 0;
int end = 0;
for ( int c : path.toCharArray() ) {
if (c == 92) {
parts.add(path.substring(start, end));
start = end + 1;
}
end++;
}
parts.add(path.substring(start));
return parts.toArray( new String[parts.size()] );
}
return path.split("/");
}
**//single slash already used as space in java
// suppose it would be Object Type obj="C:\textfiles\db\query\query.txt";**
public static void main(String[] args) {
String target="\\";
String replacement="\\\\";
String str=(String) obj;
str=str.replace(target, replacement);
String[] strarray=str.split(replacement);
String filename=strarray[8];
System.out.println("file Name: "+filename);
}
Используйте регулярное выражение, чтобы избежать символа. "String".split( "\/" );