
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文件实例有没有等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)