Here you can find the source of normalizePath(String path)
private static String normalizePath(String path)
//package com.java2s; /**/*www . j av a 2s . co m*/ * Copyright 2011-2017 Asakusa Framework Team. * * 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 { private static String normalizePath(String path) { assert path != null; StringBuilder buf = new StringBuilder(); int offset = 0; for (int i = 0, n = path.length(); i < n; i++) { if (path.charAt(i) == '/') { offset = i + 1; } else { break; } } boolean sawSeparator = false; for (int i = offset, n = path.length(); i < n; i++) { char c = path.charAt(i); if (c == '/') { sawSeparator = true; } else { if (sawSeparator) { buf.append('/'); sawSeparator = false; } buf.append(c); } } return buf.toString(); } }