- 浏览: 205709 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
hui963966800:
如何在上传完图片生成的<img>标签中把项目的域名 ...
CKEditor文件上传-多种方式-与ckfinder结合上传 -
zqb666kkk:
ajaxForm是 第三方插件的方法?
artDialog弹出新页面,保存后关闭弹出框并刷新父页面 -
wang_wenjing:
可以生效,多谢
js按比例缩放图片且垂直居中显示图片
package org.hs.filecommon; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.io.Writer; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.Random; import java.util.Scanner; import javax.swing.JFileChooser; public class FileDemo { public static final String DEFAULT_ENCODING = "utf-8"; public static final String OUT_FILE = "Writer.txt"; private ArrayList<String> pathlist = new ArrayList<String>(); /** * 显示一个目录中的所有文件(包含子目录信息) * * @param dir * 目录 */ public List<String> getFiles(File dir) { if (!dir.isDirectory()) { return null; } System.out.printf("目录:%s%n", dir.getAbsolutePath());// 获取文件的完整路径名称 File[] fileList = dir.listFiles(); for (File file : fileList) { if (file.isFile()) { System.out.printf("\t文件:%s%n", file.getAbsolutePath()); pathlist.add(file.getAbsolutePath()); } } for (File file : fileList) { if (file.isDirectory()) { getFiles(file); } } return pathlist; } /** * 删除一个文件夹下所有文件夹 * * @param dir */ public void deleteFilesAll(String dir) { File fileDir = new File(dir); File[] files = fileDir.listFiles(); for (int i = 0; i < files.length; i++) { if (files[i].isDirectory()) { files[i].delete(); } } } /** * 复制一个文件夹下所有的文件到另一个目录 * @param dir1 * @param dir2 */ public void copyOne(String dir1, String dir2) { File copyfiles = new File(dir1); File[] files = copyfiles.listFiles(); for (int i = 0; i < files.length; i++) { if (!files[i].isDirectory()) { int bytesum = 0; int byteread = 0; try { InputStream inStream = new FileInputStream(files[i]); // 读入原文件 FileOutputStream fs = new FileOutputStream(new File(dir2, files[i].getName())); byte[] buffer = new byte[5120]; int length; while ((byteread = inStream.read(buffer)) != -1) { bytesum += byteread; // 字节数 文件大小 System.out.println(bytesum); fs.write(buffer, 0, byteread); } inStream.close(); } catch (Exception e) { System.out.println("复制单个文件操作出错"); e.printStackTrace(); } } } } /** * 输出文件内容 * * @param is * @param os * @param length * @throws IOException */ public static void writeFileContent(InputStream is, OutputStream os, int length) throws Exception { os.write(length); byte[] bytes = new byte[1024]; int size; if ((size = is.read(bytes)) != -1) { os.write(bytes, 0, size); } } /** * 输出文件名 * * @throws IOException */ public static void writeFileName(File file, OutputStream os) throws IOException { byte[] fn_bytes = file.getName().getBytes(); os.write(fn_bytes.length);// 输出文件名长度 os.write(fn_bytes); } /** * 创建文件并返回输出流 * * @param path * @return * @throws IOException */ public static FileOutputStream getFileOS(String path) throws IOException { File file = new File(path); if (!file.exists()) { file.createNewFile(); } return new FileOutputStream(file); } public void getFiles() { /** * 获取多个文件 */ JFileChooser chooser = new JFileChooser(); chooser.setMultiSelectionEnabled(true); chooser.showOpenDialog(null); File[] files = chooser.getSelectedFiles(); StringBuilder sb = new StringBuilder(); String topath = "f:\\hesai"; File ff = new File(topath); if (!ff.exists()) { ff.mkdir(); } for (int i = 0; i < files.length; i++) { if (!files[i].isDirectory()) { int bytesum = 0; int byteread = 0; try { InputStream inStream = new FileInputStream(files[i]); // 读入原文件 FileOutputStream fs = new FileOutputStream(new File(topath, files[i].getName())); sb.append("文件名称:").append(files[i].getName()).append(" "); byte[] buffer = new byte[5120]; while ((byteread = inStream.read(buffer)) != -1) { bytesum += byteread; // 字节数 文件大小 sb.append("字节数::").append(bytesum).append("; "); fs.write(buffer, 0, byteread); } inStream.close(); } catch (Exception e) { System.out.println("复制单个文件操作出错"); e.printStackTrace(); } } } String info = sb.toString(); System.out.println(info); } /** * 可以指定编码格式(最理想)的文本输出流 * * @throws IOException */ public static void one() throws IOException { Random r = new Random(); // 创建文件输出流,第二个参数表示为追加的方式输出 OutputStream os = new FileOutputStream(OUT_FILE, true); // 转换为字符输出流,并指定文件编码为utf-8 OutputStreamWriter osw = new OutputStreamWriter(os, DEFAULT_ENCODING); for (int i = 1; i < 10; i++) { osw.write(String.format("随机数输出:%d%n", r.nextInt(90) + 10)); osw.flush(); } osw.close(); os.close(); System.out.println("文本文件输出完毕!"); } /** * 最理想的数据读取类(必须jdk1.5及以上) * * @throws IOException */ public static void two() throws IOException { InputStream is = new FileInputStream(OUT_FILE); // 以自定编码的方式读取输入流 Scanner scanner = new Scanner(is, DEFAULT_ENCODING); while (scanner.hasNextLine()) {// 可以判读并逐行读取 System.out.println(scanner.nextLine()); } scanner.close(); } /** * 最简单的文本流输出流 * * @throws IOException */ public static void three() throws IOException { Writer w = new FileWriter(OUT_FILE); // 创建文本文件输出流 // 创建最简单文本流输出对象,第二个参数表示遇到换行就自动输出,不用调用flush方法 PrintWriter pw = new PrintWriter(w, true); pw.println(124); // 任何数据类型都会被这个对象转换成字符输出 pw.println(true); pw.println("哈哈"); pw.close(); w.close(); System.out.println("文本文件输出完毕!"); } /** * 旧版本的文本(优点为可以缓存,性能比较好)流读取 * * @throws IOException */ public static void four() throws IOException { BufferedReader br = new BufferedReader(new FileReader(OUT_FILE)); String line = br.readLine(); // 也是逐行读取 while (line != null) { // 只能通过读取的数据是否为空判断 System.out.println(line); line = br.readLine(); } br.close(); } /** * 目标:将SDsBEaA --aABDESs输出 * 简单易懂 * @param str */ public void sort4(String str) { char[] chars = str.toCharArray(); ArrayList<Character> a1 = new ArrayList<Character>(); for (char c : chars) { a1.add(c); } Collections.sort(a1, new Comparator<Character>() { public int compare(Character ch1, Character ch2) { char c1 = Character.toUpperCase(ch1); char c2 = Character.toUpperCase(ch2); if (c1 == c2 && ch1 > ch2) {// 以防小写字母仍然排在前面 return 1; } return c1 - c2; } }); System.out.println(a1); } public static void main(String[] args) { FileDemo fd=new FileDemo(); fd.sort4("uYhjkLP"); } }
发表评论
-
多线程-猴子分桃
2018-03-14 10:04 0需求: 共计9个苹果,有2只猴子,一个猴子每次拿2个苹果, ... -
RestTemplate发送post请求时接收参数为空或报错
2017-08-22 10:19 4556最近使用RestTemplate发送post请求,遇到了很多 ... -
FusionCharts使用过程中点滴
2014-04-07 14:16 736一、报错:a fusionchart object ... -
Map按value排序(由大到小-由小到大),对List列表分页
2014-03-28 16:31 2098一,Map排序 ①Map按key排序 Ma ... -
编写bat脚本运行简单java项目-邮件发送基于spring示例
2014-02-19 14:34 1654Step1:在Eclipse的资源管理器中选中你要打包的项 ... -
如何让eclipse中properties文件中文正常显示
2014-01-24 13:42 3058如果想让eclipse中的properties文件正常显示和编 ... -
java代码检查工具
2014-01-13 16:35 770一、PMD代码检查工具 PMD扫描java代码并 ... -
DisplaybTag实现内存分页
2014-01-10 14:40 730本文转载于http://blog.csdn.net/bla ... -
Display Tag标签下使用checkbox勾选且分页后复选框状态保存
2013-11-16 14:17 2989>>>在阅读本文之前请先优先参考《Dis ... -
如何删除Eclipse subclipse plugin中记住的SVN用户名密码
2013-10-17 15:04 7451. 查看你的Eclipse中使用的是什么SVN Interf ... -
文本聚类-利用Weka将csv格式的数据转换为arff格式
2013-10-15 11:51 14741、打开Explorer。 2、open file打开一 ... -
文本聚类-Weka中文乱码解决办法
2013-10-15 11:42 1662由于Weka的默认字符集编码是CP1252,所以如果导入的数 ... -
CKEditor文件上传-多种方式-自定义上传-保存在项目外
2013-09-17 18:53 2931本文介绍2种使用ckeditor上传文件保存至项目外(即硬 ... -
CKEditor文件上传-多种方式-与ckfinder结合上传
2013-09-17 18:53 9812本文介绍2种使用ckeditor上传文件保存至项目外(即硬 ... -
JSP页面2种简单的分页形式
2013-06-26 16:06 783JSP页面2种简单的分页形式,写下来以做备忘,欢迎各位建议 ... -
Web.xml配置详解
2013-06-05 11:55 5141 定义头和根元素 部署描述符文件就像所有XML文件一 ... -
String换行符的去除 Trim()与Replace()的区别
2013-06-05 11:46 934String中的trim()方法可以去除字符串前后的空格; ... -
java实现将数字型货币转换为中文型货币
2013-04-23 12:07 823package com.head.pms.report.us ... -
文书编码生成规则2012-1-000008
2013-04-09 17:23 664①通过sql语句来获取 select to_char(s ... -
多种语言实现 人民币数字金额 转大写汉字
2013-03-07 16:26 840今天见到了一篇很好的文章,用来处理--》人民币 数字 金额 ...
相关推荐
android的IO流读写文件操作示意程序
主要介绍了Java基于IO流读取文件的方法,涉及Java文件流操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
IO流文件操作(注释版),很详细,很实用
java I\O流及文件操作,是初学者很好的资源。
io流中的文件操作,直接粘贴去eclipse或者cmd就可以运行。
文件流 读写操作,对java.io.*;中文件读写的一些相关信息
IO文件流操作,输入输出流,以及文件操作
文件操作 IO流(File FileOutputStream OutputStreamWrite BufferWrite ......)代码及注释详解
java IO流操作,包括文件的读取,写入,上传和下载,支持文本数据和音频等文件
主要介绍了Java IO流和文件操作实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
统一修改目录下文件后缀名,IO流的基本操作,递归遍历目录下所有文件,找到符合条件的后缀并修改
IO流——文件操作字节流常用方法 1. 文件操作字节流 1.1 文件操作输入字节流 ileInputStream 文件操作输入字节流 Constructor 构造方法 FileInputStream(File file); 这里是根据提供的File类对象创建对应的文件...
IO流的一些基本操作,包括对文件的读写,文件的复制,序列化,BYTE数组转换
关于java的IO流基础的练习,适合刚接触IO流,没有基础的同学
完整的文件io 流操作,有四个函数, Writer read inputStream outputStream自己总结的东东,让大家用用,不图得分,
javaIO操作各种文件,筛选文件,拷贝文件,上传下载,字符流和字节流都有,根据实际项目情况直接贴就可以了,根据文件类型选择不同的testclss就可以。全部使用效率最高的流
字节流、文件流、文件操作、字节流文件流相互转换,流的包装
流是与文件和外部设备相联系的。通过使用流定义的方法就能够完成对文件和设备的输入输出操作
对Java IO流操作感兴趣的开发人员 需要进行文件读写、网络传输等IO操作的程序员 使用场景 该代码资源可以用于教学、自学以及实际项目开发中的参考。 教学:作为教学示例演示给学生 自学:通过查看示例代码来学习和...
// //操作流 法一 //// int b = 0; //// while((b = in.read()) != -1){ //// out.write(b); //// } // //操作流 法二 //// byte[] b = new byte[1024]; //// while(in.read(b) != -1){ //// ...