- 浏览: 71745 次
- 性别:
- 来自: 西安
最新评论
-
610622106:
Iterator接口才有这三方法hasNext(),next( ...
java.lang.Iterable接口 - 循环打印MAP容器时候所想到的
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.Scanner; public class CutFile { public static void cut(File file,int fileSize){ fileSize = fileSize * 1024; int count = (int)file.length()/fileSize; InputStream in = null; try { in = new FileInputStream(file); byte[] buffer = new byte[(int)file.length()]; in.read(buffer); for(int i = 0 ; i <count;i++){ String ext = getFileExt(file); String path = file.getPath()+""+i+ext; File file1 = new File(path); OutputStream out = new FileOutputStream(file1); int length = (int)(((i+1)*fileSize>file.length())?(file.length()-i*fileSize) :fileSize); int offset = i * fileSize; out.write(buffer,offset,length); out.close(); } System.out.println("切割完成!共生成"+count+"个文件"); } catch (IOException e) { e.printStackTrace(); }finally{ try { in.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } //获取文件后缀名 public static String getFileExt(File file){ String ext = ""; String fileName = file.getName(); if(fileName.contains(".")){ ext = fileName.substring(fileName.lastIndexOf("."), fileName.length()); } return ext; } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //得到文件地址 String filePath = ""; File file = null; while(true){ System.out.println("请输入文件地址:"); filePath = scanner.next(); if(null!=filePath&&!"".equals(filePath)){ file = new File(filePath); if(!file.isFile()){ System.out.println("文件地址不正确!"); continue; } if(file.length()<=0){ System.out.println("文件太小了!"); continue; } break; } } //文件切割大小 int fileSize = 0; while(true){ System.out.println(file.getName()+"的大小是:"+file.length()/1024+"KB"); System.out.println("请输入切割大小(KB):"); fileSize = scanner.nextInt(); if(fileSize>0){ break; } } cut(file,fileSize); } }
用手机看小说,按的手疼,就做了这个,还是不太完善。
这个小程序切其他文件,打开后不正确,还得做个合并工具。
修正小数点问题
package com.wangning.util; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.text.NumberFormat; import java.util.Scanner; public class CutFile { public static void cut(File file,double fileSize){ fileSize = fileSize * 1024; double a = file.length()/fileSize; int count = (int)(file.length()/fileSize); if(a > (int) a ){ count +=1; } InputStream in = null; try { in = new FileInputStream(file); byte[] buffer = new byte[(int)file.length()]; in.read(buffer); for(int i = 0 ; i <count;i++){ String ext = getFileExt(file); String path = file.getPath()+""+i+ext; File file1 = new File(path); OutputStream out = new FileOutputStream(file1); int length = (int)(((i+1)*fileSize>file.length())?(file.length()-i*fileSize) :fileSize); int offset = i * (int) fileSize; out.write(buffer,offset,length); out.close(); } System.out.println("切割完成!共生成"+count+"个文件"); } catch (IOException e) { e.printStackTrace(); }finally{ try { in.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } //获取文件后缀名 public static String getFileExt(File file){ String ext = ""; String fileName = file.getName(); if(fileName.contains(".")){ ext = fileName.substring(fileName.lastIndexOf("."), fileName.length()); } return ext; } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //得到文件地址 String filePath = ""; File file = null; while(true){ System.out.println("请输入文件地址:"); filePath = scanner.next(); if(null!=filePath&&!"".equals(filePath)){ file = new File(filePath); if(!file.isFile()){ System.out.println("文件地址不正确!"); continue; } if(file.length()<=0){ System.out.println("文件太小了!"); continue; } break; } } //文件切割大小 int fileSize = 0; while(true){ System.out.println(file.getName()+"的大小是:"+file.length()/1024+"KB"); System.out.println("请输入切割大小(KB)/每1000个汉字:"); fileSize = scanner.nextInt(); if(fileSize>0){ break; } } cut(file,fileSize*2); } }
发表评论
-
上传-代码
2012-08-24 15:05 905刚写的上传处理方式,想从代码,效率上分析代码的质量。 参考资 ... -
PD使用SQL生成PDM
2011-07-05 20:20 2123点击PD中的文件-Reverse Engineer-Datab ... -
HTML应用
2011-05-30 10:32 756mailto:点击调用本机的EMAIL程序 -
对Apache POI的使用
2011-05-23 14:37 1555public static void main(String[ ... -
oracleimp/exp命令使用
2011-04-14 15:40 987转自:http://www.examda.com/oracle ... -
Jquery js 学习
2010-12-06 11:54 0在Jquery库里,$就是jQuery的一个简写形式,如 ... -
配置SVN服务器
2010-07-30 00:25 1451原文来自:http://liushengjiao.boke ... -
ServU 自动离线问题
2010-07-22 09:47 1464最近项目里用到FTP服务器,部署的时候FTP用的是SERVU, ... -
Flex应用一:将Flex开发环境集成到MyEclipse
2010-01-07 14:04 2699刚接触RIA,看朋友用myeclipse整合FLEX叫个费劲, ... -
简单的网页计算器(JS、HTML)
2009-12-22 00:23 2424最近才学JS,做了个简单的网页计算器,除了js部分属性的使用, ... -
当被问到“为什么接口中的变量都用final修饰”时
2009-10-11 02:04 5711今天碰到这个问题时候,还真不好理解,只知道interface中 ...
相关推荐
《txt文件切割器详解及其应用》 在信息技术领域,数据处理是日常工作的重要组成部分,而文本文件作为最常见的数据格式之一,其管理和处理显得尤为关键。在面对大容量的txt文本文件时,为了便于存储、传输或者特定...
《TXT文本切割器:高效处理大文本的利器》 在信息技术高速发展的今天,文本处理是日常工作中不可或缺的一部分。尤其在大数据时代,面对动辄几MB甚至GB的TXT文本文件,传统的文本编辑器往往无法有效应对,这就需要...
《TXT文本切割器:电子书文档分割神器》 在信息技术高速发展的今天,电子书已经成为阅读的重要形式,而TXT格式作为最原始、最常见的电子书格式,因其简洁轻便,深受读者和作者的喜爱。然而,面对一些体积庞大或者...
《txt文本切割器——手机电子书制作与管理的得力助手》 在信息化时代,电子书因其便携性、环保性和存储容量大等优势,深受广大读者喜爱,特别是在手机阅读日益普及的今天,手机电子书已成为许多人日常阅读的重要...
本文将详细介绍一个用C#编写的TXT文件切割器,并探讨相关技术点,以及如何利用该工具处理《笑傲江湖》这样的长篇小说。 首先,"C#写的txt文件切割器"是指使用C#编程语言开发的一款软件工具,它的主要功能是将大的...
在IT领域,文本处理是一项基础且重要的任务,而“txt 文件切割器 裁剪你的txt文件”这个工具就是专为处理大体积的TXT文本文件而设计的。它允许用户根据自定义的长度或字数标准来分割TXT文件,以满足特定的需求。以下...
文本切割器是一款便捷的工具,尤其适用于处理长篇幅的电子文档,如电子书或大段文字。这个软件的主要功能是将长文本按照用户设定的方式分割成若干个小段,使得阅读和管理变得更加轻松。它无需安装,即开即用,体现了...