Here you can find the source of combinePath(String... paths)
public static String combinePath(String... paths)
//package com.java2s; /******************************************************************************************* * Copyright (c) 2016, zzg.zhou(11039850@qq.com) * //from ww w. ja v a 2s . c o m * Monalisa is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. *******************************************************************************************/ public class Main { public static String combinePath(String... paths) { StringBuffer sb = new StringBuffer(); for (String x : paths) { x = x.replace("\\", "/"); if (sb.length() == 0) { sb.append(x); } else { char last = sb.charAt(sb.length() - 1); if (x.startsWith("/")) { if (last == '/') { sb.append(x.substring(1)); } else { sb.append(x); } } else { if (last == '/') { sb.append(x); } else { sb.append("/").append(x); } } } } return sb.toString(); } }