FileUtils
/*
?*Copyright ? 2006 David.turing
?*Email: securex@163.com
?*QQ群:14966586
?*/
package org.dev2dev.common;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
public class FileUtils {
??? // Returns the contents of the file in a byte array.
??? public static byte[] getBytesFromFile(File file) throws IOException {
??????? InputStream is = new FileInputStream(file);
???
??????? // Get the size of the file
??????? long length = file.length();
???
??????? // You cannot create an array using a long type.
??????? // It needs to be an int type.
??????? // Before converting to an int type, check
??????? // to ensure that file is not larger than Integer.MAX_VALUE.
??????? if (length > Integer.MAX_VALUE) {
??????????? // File is too large
??????? }
???
??????? // Create the byte array to hold the data
??????? byte[] bytes = new byte[(int)length];
???
??????? // Read in the bytes
??????? int offset = 0;
??????? int numRead = 0;
??????? while (offset < bytes.length
?????????????? && (numRead=is.read(bytes, offset, bytes.length-offset)) >= 0) {
??????????? offset += numRead;
??????? }
???
??????? // Ensure all the bytes have been read in
??????? if (offset < bytes.length) {
??????????? throw new IOException("Could not completely read file "+file.getName());
??????? }
???
??????? // Close the input stream and return bytes
??????? is.close();
??????? return bytes;
??? }
???
???
??? public static void main(String[] args) {
??
??File x=new File("115.txt");
??? try {
??FileOutputStream out=new FileOutputStream(x);
???? out.write("xxxxxxxxxxxx".getBytes());
???? out.flush();
???? out.close();
?} catch (FileNotFoundException e) {??
??e.printStackTrace();
?} catch (IOException e) {??
??e.printStackTrace();
?}
???
?}
}
posted on 2006-05-21 17:16 david.turing 閱讀(658) 評論(0) 編輯 收藏