Here you can find the source of combinePath(String parent, String child)
Parameter | Description |
---|---|
parent | a parameter |
child | a parameter |
sep | a parameter |
@SuppressWarnings("PMD") public static String combinePath(String parent, String child)
//package com.java2s; /*/* w ww .j a v a 2 s . c o m*/ * Copyright 2002-2012 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ public class Main { /** * path is combined and normalized. * * @param parent * @param child * @param sep * @return */ @SuppressWarnings("PMD") public static String combinePath(String parent, String child) { if (parent == null && child == null) { return null; } else if (parent == null || parent.length() == 0) { return normalize(child); } else if (child == null || child.length() == 0) { return normalize(parent); } child = normalize(child); return normalize(parent) + (child.startsWith("/") ? "" : "/") + child; } /** * change path to normized path. it's separator is '/'. * * @param path * @return path with separated '/'. it is not end with '/'. */ @SuppressWarnings("PMD") public static String normalize(String path) { if (path == null) { return null; } path = path.replaceAll("\\\\", "/"); if (!"/".equals(path) && path.endsWith("/")) { path = path.substring(0, path.length() - 1); } return path; } }