用InputStream打开该文件。
InputStream in =new FileInputStream("sdftxt");
int size=inavailable()
得到了size就是你该文件的字节数
import javaioFile;
import javaioFileInputStream;
import javaioFileOutputStream;
import javaioInputStream;
import javaioOutputStream;
import javaioOutputStreamWriter;
import javautilArrayList;
import javautilList;
public class $ {
public static void main(String[] args) {
List<Bean> data = new ArrayList<Bean>();
getFile(data, "D:/");
Systemoutprintln(data);
save(data);
}
private static void save(List<Bean> data) {
OutputStream os = null;
OutputStreamWriter osw = null;
try {
os = new FileOutputStream(new File("C:/acsv"));
osw = new OutputStreamWriter(os, "GBK");
for (Bean bean : data) {
oswwrite(bean + "\r\n");
}
oswflush();
} catch (Exception e) {
eprintStackTrace();
} finally {
if (os != null) {
try {
osclose();
} catch (Exception e) {
eprintStackTrace();
}
}
if (osw != null) {
try {
oswclose();
} catch (Exception e) {
eprintStackTrace();
}
}
}
}
private static void getFile(List<Bean> data, String path) {
File f = new File(path);
File[] fs = flistFiles();
if (fs == null) {
return;
}
for (File file : fs) {
if (fileisFile()) {
dataadd(new Bean(filegetParentFile()getAbsolutePath(), filegetName(), getFileSize(file)));
} else {
getFile(data, filegetAbsolutePath());
}
}
}
private static int getFileSize(File f) {
InputStream fis = null;
try {
fis = new FileInputStream(f);
return fisavailable();
} catch (Exception e) {
eprintStackTrace();
} finally {
if (fis != null) {
try {
fisclose();
} catch (Exception e) {
eprintStackTrace();
}
}
}
return 0;
}
}
class Bean {
private String filePath;
private String fileName;
private int size;
public Bean(String filePath, String fileName, int size) {
thisfilePath = filePath;
thisfileName = fileName;
thissize = size;
}
public String getFilePath() {
return filePath;
}
public void setFilePath(String filePath) {
thisfilePath = filePath;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
thisfileName = fileName;
}
public int getSize() {
return size;
}
public void setSize(int size) {
thissize = size;
}
public String toString() {
return filePath + "," + fileName + "," + size + "K";
}
}
文件夹的大小:
import javaioFile;
class DirDemo05{
public static void main(String[] args){
File src=new File("D:/Desktop/test/Stream");
printCount(src);
Systemoutprintln(count);
}
public static int count=0;
public static void printCount(File src){
//获取大小
if(null!=src && srcexists()){//递归头
if(srcisFile()){
count+=srclength();
}else{
for(File s:srclistFiles()){
printCount(s);
}
}
}
}
}
javaioFile有方法
long length()Returns the length of the file denoted by this abstract pathname
/
只说思路:
从依据目标地址,建立资源定位器URL
从资源定位器中,获取连接器对象>
取到file对象,调用filegettotalspace()可得到总大小,fgetfreespace()可得到可用空间,相减就是已使用空间。
你这问题有问题啊,百度一下跟这问题一样马甲啊
以上就是关于java 怎么获取上传文件的大小全部的内容,包括:java 怎么获取上传文件的大小、JAVA怎么获得指定文件夹里面的文件名和文件大小,并且将结果导出成为一个TXT文件、java.io.file对象中获取文件长度时 调用length方法 返回的是文件占用空间大小.如何获取文件自身的大小呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)