Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
commons-io-1.4.jar - Apache Commons IO
commons-io-1.4.jar is the JAR file for Commons IO 1.4,
which is a library of utilities to assist with developing IO functionality.
JAR File Size and Download Location:
JAR name: commons-io.jar, commons-io-1.4.jar Target JDK version: 1.3 Dependency: None File size: 109043 bytes Date modified: 16-Jan-2008 Download: Apache Commons IO Website
✍: FYIcenter.com
⏎ org/apache/commons/io/comparator/SizeFileComparator.java
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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.
*/
package org.apache.commons.io.comparator;
import java.io.File;
import java.io.Serializable;
import java.util.Comparator;
import org.apache.commons.io.FileUtils;
/**
* Compare the <b>length/size</b> of two files for order (see
* {@link File#length()} and {@link FileUtils#sizeOfDirectory(File)}).
* <p>
* This comparator can be used to sort lists or arrays of files
* by their length/size.
* <p>
* Example of sorting a list of files using the
* {@link #SIZE_COMPARATOR} singleton instance:
* <pre>
* List<File> list = ...
* Collections.sort(list, LengthFileComparator.LENGTH_COMPARATOR);
* </pre>
* <p>
* Example of doing a <i>reverse</i> sort of an array of files using the
* {@link #SIZE_REVERSE} singleton instance:
* <pre>
* File[] array = ...
* Arrays.sort(array, LengthFileComparator.LENGTH_REVERSE);
* </pre>
* <p>
* <strong>N.B.</strong> Directories are treated as <b>zero size</b> unless
* <code>sumDirectoryContents</code> is <code>true</code>.
*
* @version $Revision: 609243 $ $Date: 2008-01-06 00:30:42 +0000 (Sun, 06 Jan 2008) $
* @since Commons IO 1.4
*/
public class SizeFileComparator implements Comparator, Serializable {
/** Size comparator instance - directories are treated as zero size */
public static final Comparator SIZE_COMPARATOR = new SizeFileComparator();
/** Reverse size comparator instance - directories are treated as zero size */
public static final Comparator SIZE_REVERSE = new ReverseComparator(SIZE_COMPARATOR);
/**
* Size comparator instance which sums the size of a directory's contents
* using {@link FileUtils#sizeOfDirectory(File)}
*/
public static final Comparator SIZE_SUMDIR_COMPARATOR = new SizeFileComparator(true);
/**
* Reverse size comparator instance which sums the size of a directory's contents
* using {@link FileUtils#sizeOfDirectory(File)}
*/
public static final Comparator SIZE_SUMDIR_REVERSE = new ReverseComparator(SIZE_SUMDIR_COMPARATOR);
/** Whether the sum of the directory's contents should be calculated. */
private final boolean sumDirectoryContents;
/**
* Construct a file size comparator instance (directories treated as zero size).
*/
public SizeFileComparator() {
this.sumDirectoryContents = false;
}
/**
* Construct a file size comparator instance specifying whether the size of
* the directory contents should be aggregated.
* <p>
* If the <code>sumDirectoryContents</code> is <code>true</code> The size of
* directories is calculated using {@link FileUtils#sizeOfDirectory(File)}.
*
* @param sumDirectoryContents <code>true</code> if the sum of the directoryies contents
* should be calculated, otherwise <code>false</code> if directories should be treated
* as size zero (see {@link FileUtils#sizeOfDirectory(File)}).
*/
public SizeFileComparator(boolean sumDirectoryContents) {
this.sumDirectoryContents = sumDirectoryContents;
}
/**
* Compare the length of two files.
*
* @param obj1 The first file to compare
* @param obj2 The second file to compare
* @return a negative value if the first file's length
* is less than the second, zero if the lengths are the
* same and a positive value if the first files length
* is greater than the second file.
*
*/
public int compare(Object obj1, Object obj2) {
File file1 = (File)obj1;
File file2 = (File)obj2;
long size1 = 0;
if (file1.isDirectory()) {
size1 = sumDirectoryContents && file1.exists() ? FileUtils.sizeOfDirectory(file1) : 0;
} else {
size1 = file1.length();
}
long size2 = 0;
if (file2.isDirectory()) {
size2 = sumDirectoryContents && file2.exists() ? FileUtils.sizeOfDirectory(file2) : 0;
} else {
size2 = file2.length();
}
long result = size1 - size2;
if (result < 0) {
return -1;
} else if (result > 0) {
return 1;
} else {
return 0;
}
}
}
⏎ org/apache/commons/io/comparator/SizeFileComparator.java
Or download all of them as a single archive file:
File name: commons-io-1.4-sources.jar File size: 280834 bytes Release date: 2008-01-16 Download
⇒ Using commons-io.jar in Java Code
2018-10-27, ≈72🔥, 0💬
Popular Posts:
What Is jsse.jar (JDK 6) Java Secure Socket Extension? jsse.jar, Java Secure Socket Extension, is Ja...
How to download and install ojdbc11.jar for Oracle 21c? ojdbc11.jar for Oracle 21c is a Java JDBC Dr...
A stream buffer is a stream-based representation of an XML infoset in Java. Stream buffers are desig...
JDK 11 jdk.internal.opt.jmod is the JMOD file for JDK 11 Internal Opt module. JDK 11 Internal Opt mo...
What JAR files are required to run sax\Writer.java provided in the Apache Xerces package? 1 JAR file...