- 浏览: 1194440 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (298)
- 随心所欲 (21)
- 编程学习 (23)
- 互联网研究 (10)
- html分析 (7)
- hibernate (27)
- spring (10)
- httpclient (10)
- eclipse (4)
- 织梦建站 (9)
- photoshop (6)
- C# (3)
- .net (0)
- javascript (9)
- CSS (3)
- 数据库 (12)
- java (52)
- 服务器 (4)
- 日志记录 (3)
- 电脑维护 (29)
- quartz (5)
- 图像处理 (4)
- 搜索引擎 (3)
- struts2 (37)
- Java Web (6)
- commons-lang (1)
- 二维码 (1)
- 项目心得 (20)
- jquery (6)
- php (4)
- 办公软件 (1)
- xpath (2)
- 算法 (10)
- Android (2)
- swing swt (5)
- office (1)
- SEO (1)
最新评论
-
xinglianxlxl:
对我有用,谢谢
jQuery UI Datepicker插件timepicker时分秒 -
di1984HIT:
太好了,谢谢啊。
JAVA调用系统方法打开网页 -
di1984HIT:
学习了,谢谢您~
SQLite在Java中的使用 -
zhongchongwen001:
mark
Java解析HTML之HTMLParser使用与详解 -
cai21cn:
算法有问题,会产生不可见字符,造成信息丢失
Java中的MD5信息摘要算法
1 我写的小例子
通配符过滤目录下的文件
File dir = new File(".");
- FileFilter fileFilter = new WildcardFileFilter("*test*.java~*~");
- File[] files = dir.listFiles(fileFilter);
- for (int i = 0; i < files.length; i++) {
- System.out.println(files[i]);
- }
File dir = new File("."); FileFilter fileFilter = new WildcardFileFilter("*test*.java~*~"); File[] files = dir.listFiles(fileFilter); for (int i = 0; i < files.length; i++) { System.out.println(files[i]); }
过滤文件大小
- File dir = new File(".");
- String[] files = dir.list( new SizeFileFilter(1024 * 1024) );
- for ( int i = 0; i < files.length; i++ ) {
- System.out.println(files[i]);
- }
File dir = new File("."); String[] files = dir.list( new SizeFileFilter(1024 * 1024) ); for ( int i = 0; i < files.length; i++ ) { System.out.println(files[i]); }
文件后缀名
- File dir = new File(".");
- String[] files = dir.list( new SuffixFileFilter(".java") );
- for (int i = 0; i < files.length; i++) {
- System.out.println(files[i]);
- }
File dir = new File("."); String[] files = dir.list( new SuffixFileFilter(".java") ); for (int i = 0; i < files.length; i++) { System.out.println(files[i]); }
正则表达式
- File dir = new File(".");
- FileFilter fileFilter = new RegexFileFilter("^.*[tT]est(-\\d+)?\\.java$");
- File[] files = dir.listFiles(fileFilter);
- for (int i = 0; i < files.length; i++) {
- System.out.println(files[i]);
- }
File dir = new File("."); FileFilter fileFilter = new RegexFileFilter("^.*[tT]est(-\\d+)?\\.java$"); File[] files = dir.listFiles(fileFilter); for (int i = 0; i < files.length; i++) { System.out.println(files[i]); }
前缀
- File dir = new File(".");
- String[] files = dir.list( new PrefixFileFilter("Test") );
- for ( int i = 0; i < files.length; i++ ) {
- System.out.println(files[i]);
- }
File dir = new File("."); String[] files = dir.list( new PrefixFileFilter("Test") ); for ( int i = 0; i < files.length; i++ ) { System.out.println(files[i]); }
- File file = new File(fileName);
- // FileUtils.writeStringToFile(file, "fasdfasdfsadf");// 会覆盖
- System.out.println(File.pathSeparator);
- System.out.println(File.separator);
- System.out.println(Charset.defaultCharset());
- Files.append(System.getProperty("line.separator") + "22222222222",
- file, Charset.defaultCharset());// 不分行的
- // Files.write("3333333333", file, Charset.defaultCharset());// 会覆盖
- System.out.println(FileUtils.readFileToString(file));
File file = new File(fileName); // FileUtils.writeStringToFile(file, "fasdfasdfsadf");// 会覆盖 System.out.println(File.pathSeparator); System.out.println(File.separator); System.out.println(Charset.defaultCharset()); Files.append(System.getProperty("line.separator") + "22222222222", file, Charset.defaultCharset());// 不分行的 // Files.write("3333333333", file, Charset.defaultCharset());// 会覆盖 System.out.println(FileUtils.readFileToString(file));
- import java.io.File;
- import java.io.IOException;
- import java.net.URISyntaxException;
- import java.net.URL;
- import java.util.Collection;
- import org.apache.commons.io.FileUtils;
- import org.apache.commons.io.IOUtils;
- import org.apache.commons.io.filefilter.DirectoryFileFilter;
- import org.apache.commons.io.filefilter.FileFilterUtils;
- public final class FileFilterTest {
- private FileFilterTest() {
- }
- /**
- * 打印这个目录下所有.java结尾的文件名
- */
- private static void printFile() {
- String realPath = "D://eclipse_workspace//swp//src//com//snda//swp";
- File dir = new File(realPath);
- // FILE类的list不能递归
- /*
- * String files[] = dir.list(FileFilterUtils.suffixFileFilter(".java"));
- * for(String f : files){ System.out.println(f); }
- */
- @SuppressWarnings("unchecked")
- Collection<File> files = FileUtils.listFiles(dir,
- FileFilterUtils.suffixFileFilter(".java"),
- DirectoryFileFilter.INSTANCE);
- System.out.println(files.size());
- for (File f : files) {
- System.out.println(f.getName());
- }
- }
- /**
- * 把一个网址的内容复制到一个临时文件夹下的临时文件中去
- *
- * @throws IOException
- * @throws URISyntaxException
- */
- private static void uri2File() throws IOException, URISyntaxException {
- String uri = "http://g.cn";
- URL source = new URL(uri);
- File destination = File.createTempFile("tempfile", null);// 创建临时文件
- FileUtils.copyURLToFile(source, destination);
- System.out.println(FileUtils.readFileToString(destination));
- FileUtils.forceDeleteOnExit(destination);
- }
- /**
- * 打印一个URL的内容
- *
- * @throws IOException
- */
- private static void uri2String() throws IOException {
- String uri = "http://g.cn";
- URL source = new URL(uri);
- System.out.println(IOUtils.toString(source.openStream()));
- }
- private static void uri2String(String uri) throws IOException {
- URL source = new URL(uri);
- System.out.println(IOUtils.toString(source.openStream()));
- }
- private static void uri2String(String uri, String encoding)
- throws IOException {
- URL source = new URL(uri);
- if (encoding == null)
- uri2String(uri);
- System.out.println(IOUtils.toString(source.openStream(), encoding));
- }
- /**
- * @param args
- */
- public static void main(String[] args) {
- try {
- String uri = "http://192.168.101.181:8440/web5/home/NewsData.asp";
- uri2String(uri, "gb2312");//要用gb2312解码 不然会乱码
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
import java.io.File; import java.io.IOException; import java.net.URISyntaxException; import java.net.URL; import java.util.Collection; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.io.filefilter.DirectoryFileFilter; import org.apache.commons.io.filefilter.FileFilterUtils; public final class FileFilterTest { private FileFilterTest() { } /** * 打印这个目录下所有.java结尾的文件名 */ private static void printFile() { String realPath = "D://eclipse_workspace//swp//src//com//snda//swp"; File dir = new File(realPath); // FILE类的list不能递归 /* * String files[] = dir.list(FileFilterUtils.suffixFileFilter(".java")); * for(String f : files){ System.out.println(f); } */ @SuppressWarnings("unchecked") Collection<File> files = FileUtils.listFiles(dir, FileFilterUtils.suffixFileFilter(".java"), DirectoryFileFilter.INSTANCE); System.out.println(files.size()); for (File f : files) { System.out.println(f.getName()); } } /** * 把一个网址的内容复制到一个临时文件夹下的临时文件中去 * * @throws IOException * @throws URISyntaxException */ private static void uri2File() throws IOException, URISyntaxException { String uri = "http://g.cn"; URL source = new URL(uri); File destination = File.createTempFile("tempfile", null);// 创建临时文件 FileUtils.copyURLToFile(source, destination); System.out.println(FileUtils.readFileToString(destination)); FileUtils.forceDeleteOnExit(destination); } /** * 打印一个URL的内容 * * @throws IOException */ private static void uri2String() throws IOException { String uri = "http://g.cn"; URL source = new URL(uri); System.out.println(IOUtils.toString(source.openStream())); } private static void uri2String(String uri) throws IOException { URL source = new URL(uri); System.out.println(IOUtils.toString(source.openStream())); } private static void uri2String(String uri, String encoding) throws IOException { URL source = new URL(uri); if (encoding == null) uri2String(uri); System.out.println(IOUtils.toString(source.openStream(), encoding)); } /** * @param args */ public static void main(String[] args) { try { String uri = "http://192.168.101.181:8440/web5/home/NewsData.asp"; uri2String(uri, "gb2312");//要用gb2312解码 不然会乱码 } catch (IOException e) { e.printStackTrace(); } } }
创建临时文件 然后再删除
FileUtils.forceDeleteOnExit(destination);
2 FileUtils.deleteDirectory
删除一个目录 会先递归删除这个目录下的文件和子目录
最后删除目录 如果目录删除不了 会抛异常
guava库的
Files.deleteDirectoryContents方法递归删除但是不删除目录本身
Files.deleteRecursively 递归删除
forceDeleteOnExit(File file)
当强制JVM退出时,删除file变量对应的文件或者目录。在处理临时目录上非常好用。
3 引用自JDK1.6
引用
InputStreamReader 是字节流通向字符流的桥梁:它使用指定的 charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。
每次调用 InputStreamReader 中的一个 read() 方法都会导致从底层输入流读取一个或多个字节。要启用从字节到字符的有效转换,可以提前从底层流读取更多的字节,使其超过满足当前读取操作所需的字节。
为了达到最高效率,可要考虑在 BufferedReader 内包装 InputStreamReader。例如:
BufferedReader in
= new BufferedReader(new InputStreamReader(System.in));
发表评论
-
Java使用Jaudiotagger读取Mp3及Flac音频操作
2015-01-31 15:28 11798Jaudiotagger是jid3lib的扩展,比jlid3 ... -
Jaudiotagger Java音频视频操作
2015-01-31 15:21 3083Jaudiotagger Java音频视频操作 jaudi ... -
FFmpeg对视频音频转换操作
2015-01-31 14:52 5394FFmpeg是一套可以用来记 ... -
Java获取Windows硬件信息
2015-01-26 10:54 2920Java获取Windows硬件信息 ... -
Java Sigar JNI收集硬件信息
2015-01-26 10:57 1553Hyperic-Sigar是一个收集系统各项底层信息的工具 ... -
获取真实IP地址包括代理
2014-11-12 09:20 1208通过Serlet API获取客户端的真实ip pub ... -
Java数字转字符串前面自动补0的实现
2014-10-22 21:52 1754/** * Java里数字转字符串前面自 ... -
StringEscapeUtils的使用
2014-08-19 17:14 5429StringEscapeUtils是apache co ... -
Java 从Jar文件中动态加载类
2014-08-18 15:10 1289从Style.jar中加载程序所需要的样式 其中Styl ... -
JXL读取Excel中的数据
2014-06-08 17:41 1059jxl是一个韩国人写的java操作excel的工具, ... -
如何将文本中的Unicode转换成中文
2014-05-12 14:32 2523Unicode 是为了解决传统的字符编码方案的局限 ... -
python与java 时间戳的区别与转换
2014-05-09 19:08 5508和java不同的是在python下获取的时间戳是有小数点的浮 ... -
Java GZIP压缩的使用
2014-04-23 19:43 1622为了减小服务器负担,传递字符串内容通常要进行压缩,同时也能增 ... -
java 二进制,八进制,十进制,十六进制间相互转换的方法
2014-04-22 21:57 1859int n1 = 14; //十进制转成十六进制 ... -
通过UserAgent判断智能手机(设备,Android,IOS)
2014-02-14 13:51 94538通过 Agent 来判断相应的智能手机设备,然后跳转到新的 ... -
HttpClient4.3学习之EntityUtils对象
2014-02-10 09:00 46888最近使用HttpClient4.3开源包,发 ... -
Fastjson Java的JSON处理器
2014-02-09 08:27 1180Fastjson是一个Java语言编写的JSON处理器,由 ... -
Java使用Robot操作键盘和鼠标
2014-02-09 08:26 11963Java提供操作键盘和鼠标的API,在java.awt.* ... -
HttpClient 4.3教程 第六章 HTTP缓存
2014-02-09 08:26 66176.1.基本概念 HttpClient的缓存机制提 ... -
HttpClient4.3 教程 第五章 快速API
2014-02-09 08:25 25805.1.Easy to use facade API ...
相关推荐
在Java编程中,`FileUtils`是一个...通过阅读源码,你可以学习到如何优雅地处理文件I/O操作,并理解其错误处理和性能优化策略。对于Java开发者来说,理解并掌握`FileUtils`的用法和原理,将有助于提高代码质量和效率。
在“Cocos2D-X开发学习笔记-游戏数据存储项目实例”中,你可能会学习到如何结合上述技术,创建一个实际的游戏数据存储系统。通过阅读教程和分析提供的项目文件"MyDataSave01",你将深入理解如何在实践中应用这些知识...
在本篇“Struts2学习笔记三”中,我们将探讨Struts2中处理文件上传的核心组件和拦截器,以及如何在实际应用中实现文件上传。 1. 文件上传组件: - jspSmartUpload:这是一个早期用于模型1的上传组件,现在已经被更...
通过阅读和理解这段代码,你可以学习到如何在Java中处理不同编码的文件,以及如何在不确定编码的情况下进行探测和转换。 总之,理解字符编码以及如何在Java中处理它们是每个开发者的必备技能。无论是处理本地化文本...
2. **3.6 版本更新**: - 性能提升:Cocos2d-x 3.6 版本优化了渲染效率,减少了内存消耗,提升了游戏运行速度。 - 脚本语言支持:对JSB(JavaScript Bindings)进行了增强,使JavaScript开发更加便捷高效。 - ...
资源管理是cocos2d-x开发中的重要环节,你可以使用`cc.FileUtils`类来加载和管理这些资源,确保它们能在游戏中正确显示和播放。 编译和运行项目时,cocos2d-x的构建系统会处理所有依赖,包括编译C++源代码、链接库...
4. 存档与加载:利用FileUtils保存和读取游戏进度,确保游戏状态的持久化。 四、优化与扩展 1. 性能优化:使用profiler工具分析性能瓶颈,优化渲染、更新逻辑,减少不必要的计算。 2. 社交功能:集成社交网络API,...
2. **Lua基础语法**:在学习这个配套代码时,你需要了解Lua的基本语法,包括变量、数据类型(如数字、字符串、表、函数等)、控制结构(如if语句、for循环、while循环)以及函数定义和调用。 3. **Cocos2d-x API在...
在本例中,我们使用`FileUtils`类来从URL下载文件到本地。`commons-io-1.4.jar`是这个库的一个版本,你需要将其添加到项目的类路径中,以便能够使用其中的类和方法。 `TestThead2` 类是我们的自定义线程类,它扩展...
9. **资源管理**:`cc::FileUtils`类帮助加载和管理资源文件,如图片、音频和XML配置文件。 10. **性能优化**:Cocos2d-x提供了一些优化工具,如`cc::RenderCommand`和`cc::CommandBuffer`,以提高渲染效率。 离线...
二、核心类解析 1. `FileUtils`: 提供大量对文件操作的静态方法,如`copyFile()`, `moveFile()`, `deleteQuietly()`等,方便且易用。 2. `IOUtils`: 这个类提供了处理流的工具方法,如`copy()`方法用于复制流,`...
你需要了解如何正确地组织资源文件,并使用如`cc.FileUtils`这样的工具来加载它们。 8. 测试与打包:完成代码编写后,可以在多个平台上进行测试,包括iOS、Android、Windows、Mac等。cocos2d-x提供了一键打包功能,...
载入游戏时,首先使用`FileUtils`的`getDataFromFile()`方法读取保存的二进制文件,然后调用`Value::fromBinary()`进行反序列化。反序列化后的`cc::Value`对象可以用来恢复游戏状态,例如设置玩家的位置、更新财产等...
2. **基本流类**:Java的基础文件流类有FileInputStream和FileOutputStream,它们分别用于读取和写入文件。例如,`new FileInputStream("file.txt")` 创建一个从指定文件读取数据的输入流,而`new FileOutputStream...
1. **cocos2d-Lua引擎**:cocos2d-Lua是cocos2d-x框架的一个分支,它将强大的cocos2d-x图形库与易于学习和使用的Lua脚本语言相结合,使得开发者能够快速构建2D游戏。在本项目中,所有的游戏逻辑、场景管理、对象交互...
cocos2d-x是一款跨平台的2D游戏开发框架,基于C++,同时支持Objective-C和Python等语言,广泛应用于移动游戏开发领域。这份文档的存在,旨在解决开发者在使用cocos2d-x过程中可能遇到的各类问题,提升开发效率和游戏...
5. 资源管理:Cocos2dx提供`cc::Director`和`cc::FileUtils`类,用于加载和管理游戏资源,如图片、音频文件等。 五、学习路径 1. 学习C++基础知识,理解面向对象编程的概念。 2. 熟悉Cocos2dx的API,通过官方文档和...
2. **构建脚本**:可能是Maven的`pom.xml`或Gradle的`build.gradle`文件,用于定义依赖关系、构建过程和部署步骤。 3. **测试**:在`src/test/java`目录下,包含单元测试和集成测试,用于验证代码功能的正确性。 4. ...
2. 流操作:支持对输入流、输出流的读写,以及转换操作。 3. 字符集:提供了对字符集的支持,便于在不同编码间进行转换。 4. 文件观察:可以监听文件系统的变化。 5. 临时文件:方便地创建和管理临时文件。 6. 线程...
通过这个项目,开发者不仅可以学习到如何在Struts2环境中实现文件操作,还能了解相关的安全控制和用户体验优化。对于Java Web开发者来说,熟练掌握这些技能是至关重要的,因为它直接关系到应用的功能完善性和用户...