老尸 发表于 2015-1-18 11:27:47

来看Java编程猎取硬盘空间

为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。
由于论坛有人问到这个成绩,以是就写了这篇文章。但愿对人人有所匡助。
一样平常来说,要用java失掉硬盘空间,有3种办法:
1.挪用system的command,然后剖析失掉的了局,这类办法有很强的体系依附性,linux下和win下要分离写程序。
上面是一个win下的例子,编译乐成以后,运转javaDiskspaceyourdir(好比c:)

importjava.io.BufferedReader;
importjava.io.InputStreamReader;
/**
*Determinefreediskspaceforagivendirectoryby
*parsingtheoutputofthedircommand.
*Thisclassisinspiredbythecodeat
*WorksonlyunderWindowsundercertaincircumstances.
*Yes,itsthatshaky.
*RequiresJava1.4orhigher.
*@
*MarcoSchmidt
*/
publicclassDiskspace
{
 privateDiskspace()
 {
  //preventinstantiationofthisclass
 }
/**
*Returnavailablefreediskspaceforadirectory.
*@
dirNamenameofthedirectory
*@
freediskspaceinbytesor-1ifunknown
*/
 publicstaticlonggetFreeDiskSpace(StringdirName)
 {
  try
  {
   //guesscorrectdircommandbylookingatthe
   //operatingsystemname
   Stringos=System.getProperty("os.name");
   Stringcommand;
   if(os.equals("WindowsNT")||os.equals("Windows2000"))
   {
    command="cmd.exe/cdir"+dirName;
   }
   else
   {
    command="command.com/cdir"+dirName;
   }
   //runthedircommandontheargumentdirectoryname
   Runtimeruntime=Runtime.getRuntime();
   Processprocess=null;
   process=runtime.exec(command);
   if(process==null)
   {
    return-1;
   }
   //readtheoutputofthedircommand
   //onlythelastlineisofinterest
   BufferedReaderin=newBufferedReader(newInputStreamReader(process.getInputStream()));
   Stringline;
   StringfreeSpace=null;
   while((line=in.readLine())!=null)
   {
    freeSpace=line;
   }
   if(freeSpace==null)
   {
    return-1;
   }
   process.destroy();
   //removedots&commas&leadingandtrailingwhitespace
   freeSpace=freeSpace.trim();
   freeSpace=freeSpace.replaceAll(".","");
   freeSpace=freeSpace.replaceAll(",","");
   String[]items=freeSpace.split("");
   //thefirstvalidnumericvalueinitemsafter(!)index0
   //isprobablythefreediskspace
   intindex=1;
   while(index<items.length)
   {
    try
    {
     longbytes=Long.parseLong(items);
     returnbytes;
    }
    catch(NumberFormatExceptionnfe)
    {
    }
   }
   return-1;
  }
  catch(Exceptionexception)
  {
    return-1;
  }
 }
/**
*Commandlineprogramtoprintthefreediskspacetostdout
*forall26potentialrootdirectoriesA:        oZ:
*(whennoparametersaregiventothisprogram)
*orforthosedirectories(drives)specifiedasparameters.
*@
argsprogramparameters
*/
 publicstaticvoidmain(String[]args)
 {
  if(args.length==0)
  {
   for(charc=A;c<=Z;c++)
   {
    StringdirName=c+":";
    System.out.println(dirName+""+
    getFreeDiskSpace(dirName));
   }
  }
  else
  {
   for(inti=0;i<args.length;i++)
   {
    System.out.println(args+""+getFreeDiskSpace(args));
   }
  }
 }
}<p>
在性能方面,在windows平台下,.net网页编程可能是占强项,要是把.net网页编程放在sun开发的操作系统上去运行呢?根本就运行不了,.net网页编程对其它操作系统的支持也很弱,性能也可能比不上java。

冷月葬花魂 发表于 2015-1-21 07:11:32

还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。

小魔女 发表于 2015-1-22 18:44:12

任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言

第二个灵魂 发表于 2015-1-28 10:27:23

至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。

仓酷云 发表于 2015-2-4 20:32:16

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

活着的死人 发表于 2015-2-5 22:53:34

还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。

只想知道 发表于 2015-2-8 11:46:44

你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。

小妖女 发表于 2015-2-25 10:43:46

如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。

柔情似水 发表于 2015-3-6 11:15:39

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

飘灵儿 发表于 2015-3-11 17:06:45

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。

金色的骷髅 发表于 2015-3-19 02:29:55

是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言

简单生活 发表于 2015-3-27 00:10:40

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
页: [1]
查看完整版本: 来看Java编程猎取硬盘空间