标题:求助:不用递归统计所有的文件大小
作者:finaleden
日期:2008-11-12 11:36
内容:
我想知道 如何 不用递归 就能统计所有的文件大小 急求算法
(难点是 文件夹下又含有文件夹和文件 .......)
真是难死我了!!
请 各位帮助啊!!!!!!!!!!!!!!!!
QQ: 9402369
MSN: fantasyeden@hotmail.com
E-mail: finaleden@163.com
#1 [lazybone 11-12 13:09]
//不用递归统计所有的文件
import java.io.File;
import java.util.LinkedList;
public class FileSystem {
public static void main(String[] args) {
long a = System.currentTimeMillis();
LinkedList list = new LinkedList();
File dir = new File("c:\\java\\");
File file[] = dir.listFiles();
for (int i = 0; i < file.length; i++) {
if (file.isDirectory())
list.add(file);
else
System.out.println(file.getAbsolutePath());
}
File tmp;
while (!list.isEmpty()) {
tmp = list.removeFirst();
if (tmp.isDirectory()) {
file = tmp.listFiles();
if (file == null)
continue;
for (int i = 0; i < file.length; i++) {
if (file.isDirectory())
list.add(file);
else
System.out.println(file.getAbsolutePath());
}
} else {
..
#2 [finaleden 11-12 13:40]
这是 我目前的代码
void CFileBrowser::spaceCalculate( const QString & dir )
{
QDir d( dir );
QString pathTemp; //临时路径
if( d.exists() && !d.isReadable() ) return;
d.setFilter( QDir::Dirs | QDir::Files ); //设置过滤器,列出目录和文件
d.setSorting( QDir::Name | QDir::DirsFirst | QDir::IgnoreCase | QDir::Reversed );//设置排列顺序,
//返回这个目录中所有目录和文件的QFileInfo对象的列表
const QFileInfoList * list = d.entryInfoList();
QFileInfoListIterator it( *list );
QFileInfo *fi;
while( (fi = it.current()) )
{ //空目录情况
if( (fi->fileName() == ".") || (fi->fileName() == "..") )
{
pathTemp = fi->filePath(); //获得路径
spaceDir += QFileInfo(pathTemp).size();
++it;
continue;
}
//文件情况
if(fi->isFile())
{
pathTemp = fi->filePath(); //获得文件路径
spaceDir += QFileInfo(pathTemp).size();
++it;
continue;
}
//处理目录
if (fi->isDir())
{
&n ..
#3 [finaleden 11-12 13:44]
加上 这句递归 spaceCalculate(pathTemp) 后 当 内容大了(2G)之后效率低得吓死人
#4 [finaleden 04-10 09:57]
我需要 C++ 或者 C的实现 (QT )
#5 《三国记》之江山美人 [琳瑞o 04-19 10:53]
在4月22日13:00 飞游互动三国类网页游戏《三国记》首服 【江山美人】进行公测,请大家拭目以待。《三国记》官方网址: 点击访问

问天下英雄,谁人不爱江山,谁人不想拥有美人!三国类网页游戏《三国记》隆重推出的【江山美人】将助您成就霸业,一匡天下。乱世造就几多悲歌,也成就几多英雄,古有盖世英雄西楚霸王之称的“项羽”,爱江山更爱美人...今天历史将有您来改写,就是你,广邀天下英雄美女,共赴《三国记》包揽江山与美人,建千秋功业,留万古英明。还等待什么,快快加入《三国记》首服【江山美人】踏上征服美女,雄霸江山的英雄之路。进入《三国记》首服【江山美人】注册的新玩家将获得豪放大礼,助您在雄霸江山抱得美人归的道路上更为顺畅!
点击访问三国记官方网站