JAVA读取文件夹大小的几种方法实例

JAVA读取文件夹大小的几种方法实例,第1张

import javaioFile;

import javautilArrayList;

import javautilCollection;

import javautilList;

import orgapachecommonsioFileUtils;

import orgapachecommonsioIOUtils;

public class Test {

public static void main(String[] args) throws Exception {

String searchStr = "APPTYPEID";

File searchDir = new File("D:\\xampp\\htdocs\\discuz");

List<Search> list = new ArrayList<Search>();

Collection<File> files = FileUtilslistFiles(searchDir, null, true);

List<String> lines = null;

for (File file : files) {

lines = FileUtilsreadLines(file);

for (int i = 0; i < linessize(); i++) {

if (linesget(i)indexOf(searchStr) != -1) {

Search s = new Search();

ssetFilename(filegetName());

ssetLine(i + 1);

ssetContent(linesget(i));

listadd(s);

}

}

}

StringBuffer sb = new StringBuffer();

for (Search s : list) {

sbappend(sgetFilename() + " , " + sgetLine() + " , " + sgetContent())append(

IOUtilsLINE_SEPARATOR);

}

FileUtilswriteStringToFile(new File("D:\\searchtxt"), sbtoString(), "UTF-8");

}

}

class Search {

private String filename;

private int line;

private String content;

public String getFilename() {

return filename;

}

public void setFilename(String filename) {

thisfilename = filename;

}

public String getContent() {

return content;

}

public void setContent(String content) {

thiscontent = content;

}

public void setLine(int line) {

thisline = line;

}

public int getLine() {

return line;

}

}

很多朋友都想知道java如何获取本地ip?下面就一起来了解一下吧~

获取java本地ip一共有两种方法:1、inetAddress类;2、封装方法。

1、 inetAddress类

通过InetAddress的实例对象包含以数字形式保存的IP地址,同时还可能包含主机名(如果使用主机名来获取InetAddress的实例,或者使用数字来构造,并且启用了反向主机名解析的功能)。InetAddress类提供了将主机名解析为IP地址(或反之)的方法。其生成InetAddress对象的方法。

import javanetInet4Address; import javanetInetAddress; import javanetUnknownHostException; public class Main {     public static void main(String[] args) throws UnknownHostException {         //Inet4Address address= (Inet4Address) Inet4AddressgetLocalHost();         InetAddress address = InetAddressgetLocalHost();         Systemoutprintln(address);//获取计算机名称和ip地址         String hostAddress = addressgetHostAddress();         Systemoutprintln(hostAddress);//获取ip地址         String hostName = addressgetHostName();         Systemoutprintln(hostName);//获取计算机名称     } }

2、封装方法。

    public static String getLocalIp() {         Enumeration  netInterfaces = null;         try {             netInterfaces = NetworkInterfacegetNetworkInterfaces();             while (netInterfaceshasMoreElements()) {                 NetworkInterface nif = netInterfacesnextElement();                 Enumeration  InetAddress = nifgetInetAddresses();                 while (InetAddresshasMoreElements()) {                     String ip = InetAddressnextElement()getHostAddress();                     if (ipstartsWith("192168")) {                         return ip;                     }                 }             }         } catch (SocketException e) {         }         return "127001";     }

逐行读取文本内容

1引包

import javaioBufferedReader;

import javaioFile;

import javaioFileReader;

2获得文件路径和文件名

String filePathName = path + filename;

3获得File对象,建立FileReader对象,并实例化为fr,建立BufferedReader对象,并实例化为br

File file = new File(filePathName);

FileReader fr = new FileReader(file);

BufferedReader br = new BufferedReader(fr);

4获得一行数据

line = (String) brreadLine();

5关闭BufferedReader,FileReader

brclose();

frclose();

public class IOTest {

public static void main(String[] args){

File f = new File("E:\\1txt");

//读

String oldStr = "";

try {

FileReader fr = new FileReader(f);

BufferedReader br = new BufferedReader(fr);

String line = null;

while((line = brreadLine())!=null){

oldStr += line;

}

} catch (FileNotFoundException e1) {

e1printStackTrace();

} catch (IOException e) {

eprintStackTrace();

}

//写

String newStr = "zxc";

FileWriter fw;

try {

fw = new FileWriter(f);

BufferedWriter bw = new BufferedWriter(fw);

bwwrite(oldStr+"\r\n"+newStr);//不想换行就把\r\n去掉

bwclose();

fwclose();

} catch (IOException e) {

eprintStackTrace();

}

}

}

这样就ok了,自己总结的。

java中可以用getBytes()length获取字符串占用内容的大小,原理是java中任何字符都采用Unicode编码,所以衡量占用内存大小采用占用的字节数。

举例如下:

public class TestStringSize {

public static final void main(String[] args) {

Systemoutprintln("占用内存大小:"+"学java"getBytes()length);

}

}

输出结果:

占用内存大小:6 byte

很好解决,用三目运算符改一下你的打印语句。

Systemoutprintln("th bigger one between rt1 and rt2 is"+ (rt1>ComparableGeometricObejectmax(rt1, rt2)"rt1":"rt2"));

三目运算符

逻辑表达式(a)表达式(b):表达式(c)

a为true的时候,结果为b,否则结果为c

你保证b,和c是实例名字(String)即可。

没上机运行过,但确实是这么解决的,你去试试。如果可行望采纳^_^

ConnectiongetInstance();

MessageDigestgetInstance();

XMLWorkerHelper

PdfWriter

等很多需要单例的地方

java中直接使用AudioInputStream类来 *** 作音乐文件,获取时长,实例如下:

import javaioFile;

import javaioIOException;

import javaxsoundsampledAudioInputStream;

import javaxsoundsampledAudioSystem;

import javaxsoundsampledClip;

import javaxsoundsampledLineUnavailableException;

import javaxsoundsampledUnsupportedAudioFileException;

public class AudioLength {

public static void main(String[] args) throws LineUnavailableException,

UnsupportedAudioFileException, IOException {

File file = new File("d:/testwav");

Clip clip = AudioSystemgetClip();

AudioInputStream ais = AudioSystemgetAudioInputStream(file);

clipopen(ais);

Systemoutprintln( clipgetMicrosecondLength() / 1000000D + " s" );//获取音频文件时长

}

}

以上就是关于JAVA读取文件夹大小的几种方法实例全部的内容,包括:JAVA读取文件夹大小的几种方法实例、java获取本地ip、java读取txt文件实例有没有等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9461395.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存