Разделить строку на косую черту

У меня есть код, который я хотел бы разбить на основе косой черты "/".

Всякий раз, когда у меня есть разделение регулярных выражений на основе "////", он никогда не разбивается и возвращает мне всю строку. Я попытался заменить файловым разделителем, который дает "\", а затем расщепляется с "\\", но не ниже кода.

Ниже приведен код, проверенный

package org.saurav.simpletests.string;

import java.io.File;

public class StringManipulator {

    public static void main(String a[]){
        String testString ="/UserId/XCode/deep";

        //testString = testString.replace("/", File.separator);
        //testString = testString.replace("/", "_");
        testSplitStrings(testString);
    }

    /**
     * Test the split string
     * @param path
     */
    public static void testSplitStrings(String path){
        System.out.println("splitting of sprint starts \n");
        String[] paths = path.split("////");
        for (int i = 0; i < paths.length; i++) {
            System.out.println("paths::"+i+" "+paths[i]+"\n");
        }
        System.out.println("splitting of sprint ends");
    }
}

веселит, Saurav

Ответы

Ответ 1

Нет необходимости скрывать косые черты. Ваш код работает отлично, если вы просто выполните:

String[] paths = path.split("/");

Ответ 2

String[] paths = path.split("\\");

Ответ 3

Java может возвращать нулевой указатель, поэтому вам нужно обернуть его с помощью try catch

try {
        String[] temp = imageFilenameOriginal.split("/");

    } catch (Exception ex){
        errorMessage = ex.getMessage();
    }

Компилятор намного счастливее.