
可以直接通过>
用InputStream打开该文件。
InputStream in =new FileInputStream("sdftxt");
int size=inavailable()
得到了size就是你该文件的字节数
import javaio;
import javautilzip;
/
@author Hardneedl
/
public class ZipEntriesDemo {
public static void main(String args) throws IOException {
ZipInputStream zipIn = new ZipInputStream(new FileInputStream(args[0]));
ZipEntry zipEntry;
while ( (zipEntry = zipIngetNextEntry()) != null ) {
zipIncloseEntry();
if (!zipEntryisDirectory()) {
String name = zipEntrygetName();
long size = zipEntrygetSize();
long compd = zipEntrygetCompressedSize();
Systemoutprintf("%s , size=%d, compressed size=%d\r\n", name, size, compd);
}
}
zipInclose();
}
}
// 查看copy例子即可。
import javaawtBorderLayout;
import javaawtCursor;
import javaawtToolkit;
import javaawteventActionEvent;
import javaawteventActionListener;
import javabeansPropertyChangeEvent;
import javabeansPropertyChangeListener;
import javaioFile;
import javaioFileInputStream;
import javaioFileOutputStream;
import javaioInputStream;
import javaioOutputStream;
import javaxswingJButton;
import javaxswingJFrame;
import javaxswingJProgressBar;
import javaxswingSwingWorker;
public class Bar extends JFrame implements PropertyChangeListener
{
private static final long serialVersionUID = 1L;
private static final int MIN = 0;
private static final int MAX = 100;
private JProgressBar progressBar;
private JButton copy;
private Task task;
public Bar(String title)
{
setTitle(title);
setLayout(new BorderLayout());
progressBar = new JProgressBar(MIN, MAX);
progressBarsetValue(MIN);
progressBarsetStringPainted(true);
add(progressBar, BorderLayoutCENTER);
copy = new JButton("拷贝");
copyaddActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
start();
copysetEnabled(false);
}
});
add(copy, BorderLayoutEAST);
}
class Task extends SwingWorker<Void, Void>
{
@Override
public Void doInBackground()
{
setProgress(MIN);
File file = new File("ajpg");
long size = filelength();
byte[] bts = new byte[(int) (size / (Mathrandom() 50 + MAX - 50))];
int length = 0;
long cLength = 0;
try
{
InputStream stream = new FileInputStream(file);
OutputStream os = new FileOutputStream(new File("copy_aajpg"));
while((length = streamread(bts)) > 0)
{
oswrite(bts, 0, length);
cLength += length;
setProgress((int) (cLength MAX / size));
Threadsleep(30);
}
osflush();
osclose();
streamclose();
}
catch(Exception e)
{
eprintStackTrace();
}
return null;
}
@Override
public void done()
{
setTitle("拷贝完毕");
ToolkitgetDefaultToolkit()beep();
copysetEnabled(true);
setCursor(null);
}
}
public void propertyChange(PropertyChangeEvent evt)
{
if("progress" == evtgetPropertyName())
{
int progress = (Integer) evtgetNewValue();
progressBarsetValue(progress);
}
}
private void start()
{
task = new Task();
taskaddPropertyChangeListener(this);
taskexecute();
setTitle("正在拷贝");
setCursor(CursorgetPredefinedCursor(CursorWAIT_CURSOR));
}
private static void createAndShowGUI()
{
Bar frame = new Bar("Bar");
framesetAlwaysOnTop(true);
framesetSize(280, 60);
framesetResizable(false);
framesetLocationRelativeTo(null);
framesetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
framesetVisible(true);
}
public static void main(String[] args)
{
javaxswingSwingUtilitiesinvokeLater(new Runnable()
{
public void run()
{
createAndShowGUI();
}
});
}
}
public static void main(String[] args) {
File file = new File("aaaxls");
Systemoutprintln("文件大小:"+filelength());
}
有一种叫jspsmartupload的包用来简化文件上传下载的编写
里面可以获取文件大小
//取得文件
comjspsmartuploadFile myFile = mySmartUploadgetFiles()getFile(0);
//取得文件名
String fileName = myFilegetFileName();
//取得文件大小
int fileSize = myFilegetSize();
这是基于spring架构的上传文件支持多个文件上传,拿到file对象后,直接filesize()就可以获取文件的大小,
if (request instanceof Multipart>
以上就是关于Java获取下载文件的大小全部的内容,包括:Java获取下载文件的大小、JAVA怎么获得指定文件夹里面的文件名和文件大小,并且将结果导出成为一个TXT文件、java 怎么获取上传文件的大小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)