Returns true if the URL represents a path, and false otherwise. : URL « Network « Java Tutorial






import java.io.File;
import java.net.URL;

/* 
 * JCommon : a free general purpose class library for the Java(tm) platform
 * 
 *
 * (C) Copyright 2000-2005, by Object Refinery Limited and Contributors.
 * 
 * Project Info:  http://www.jfree.org/jcommon/index.html
 *
 * This library 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 2.1 of the License, or 
 * (at your option) any later version.
 *
 * This library 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 library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
 * USA.  
 *
 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 
 * in the United States and other countries.]
 * 
 * ------------
 * IOUtils.java
 * ------------
 * (C)opyright 2002-2004, by Thomas Morgner and Contributors.
 *
 * Original Author:  Thomas Morgner;
 * Contributor(s):   David Gilbert (for Object Refinery Limited);
 *
 * $Id: IOUtils.java,v 1.8 2009/01/22 08:34:58 taqua Exp $
 *
 * Changes
 * -------
 * 26-Jan-2003 : Initial version
 * 23-Feb-2003 : Documentation
 * 25-Feb-2003 : Fixed Checkstyle issues (DG);
 * 29-Apr-2003 : Moved to jcommon
 * 04-Jan-2004 : Fixed JDK 1.2.2 issues with createRelativeURL;
 *               added support for query strings within these urls (TM);
 */


/**
 * The IOUtils provide some IO related helper methods.
 *
 * @author Thomas Morgner.
 */
public class Main {
  /**
   * Returns <code>true</code> if the URL represents a path, and 
   * <code>false</code> otherwise.
   * 
   * @param baseURL  the URL.
   * 
   * @return A boolean.
   */
  private boolean isPath(final URL baseURL) {
      if (getPath(baseURL).endsWith("/")) {
          return true;
      }
      else if (baseURL.getProtocol().equals("file")) {
          final File f = new File(getPath(baseURL));
          try {
              if (f.isDirectory()) {
                  return true;
              }
          }
          catch (SecurityException se) {
              // ignored ...
          }
      }
      return false;
  }

  /**
   * Implements the JDK 1.3 method URL.getPath(). The path is defined
   * as URL.getFile() minus the (optional) query.
   *
   * @param url the URL
   * @return the path
   */
  private String getPath (final URL url) {
      final String file = url.getFile();
      final int queryIndex = file.indexOf('?');
      if (queryIndex == -1) {
          return file;
      }
      return file.substring(0, queryIndex);
  }
}








19.2.URL
19.2.1.Creating a URL With components
19.2.2.Creating a URL with a single string.
19.2.3.Create a URL that refers to a jar file in the file system
19.2.4.Create a URL that refers to an entry in the jar file
19.2.5.java.net.URL
19.2.6.A class that displays information about a URL
19.2.7.ProtocolTester
19.2.8.Parsing a URL
19.2.9.Eliminate Query
19.2.10.Parse Host
19.2.11.Parse Port
19.2.12.Make a URL from the given string
19.2.13.Create BufferedInputStream from URL
19.2.14.Utility to convert File to URL.
19.2.15.Read from URL
19.2.16.Get Content from a URL
19.2.17.Save binary file from URL
19.2.18.Reading A Web Resource: Opening a URL's stream
19.2.19.Relative URL
19.2.20.Resolve a relative URL
19.2.21.Build query string for URL
19.2.22.URL Equality
19.2.23.URL Splitter
19.2.24.new URL('mailto:your@yourserver.net')
19.2.25.Getting Text from a URL
19.2.26.Getting an Image from a URL
19.2.27.Getting a Jar File Using a URL
19.2.28.File size from URL
19.2.29.Returns true if the URL represents a path, and false otherwise.
19.2.30.Locating files by path or URL
19.2.31.provides a simple interface for assembling GET URLs
19.2.32.Add Parameter to URL
19.2.33.Extracts the base URL from the given URL by stripping the query and anchor part.
19.2.34.Returns the anchor value of the given URL