html读写文件(html读取文本内容)
华为云服务器特价优惠火热进行中! 2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。
合作流程: |
今天给各位分享html读写文件的知识,其中也会对html读取文本内容进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
微信号:cloud7591如需了解更多,欢迎添加客服微信咨询。
复制微信号
本文目录一览:
服务端HTML5,JS怎么读写手机客户端的本地文件?
如果你学习HTML5是为了写手机网页(因为现在都流行了),请不必去学习jQuery了,
因为jQuery就算你压缩,它也有30k以上,如果你是用户,你愿意给这流量吗?
真真正正去学好JS吧。
html
head
titlenew page/title
script
function GetHeader(src) {
var ForReading=1;
var fso=new ActiveXObject("Scripting.FileSystemObject");
var f=fso.OpenTextFile(src,ForReading);
return(f.ReadAll());
}
var arr=GetHeader("C:\\a.txt").split("\r\n");
for(var i=0;iarr.length;i++){
alert("第"+(i+1)+"行数据为:"+arr[i]);
}
/script
/head
/html
安卓导入web html 文件快速读写方法
总所周知在安卓的资源文件中可以直接放入文件,webView 加载的时候可以直接调用(webview.loadUrl(""+文件名称)),
但是assets 文件不支持写入文件,如果我们要更新html 文件怎么办呢。
1、我们可以把初始版本html 文件压缩到assets 下,然后在解压到本地文件中去。如果后面有小的更新我们只需要根据文件MD5去更新
2、如果是大的更新我们只需要重新导入压缩包到assets 下面打包即可。特别注意assets 文件压缩直接最好检查一下是否包含中文,不然会解压不成功
/**/**
* 解压缩功能.
* 将zipFile文件解压到folderPath目录下.
* ZipFile 解压全部文件效率高于 ZipInputStream
* @throws Exception
*/
public static int upZipFile(File zipFile, String folderPath, ISiteFileManagetEvent event)throws IOException {
ZipFile zfile =new ZipFile(zipFile);
Enumeration zList = zfile.entries();
ZipEntry ze =null;
byte[] buf =new byte[1024];
int nowLength =0;
while (zList.hasMoreElements()) {
ze = (ZipEntry) zList.nextElement();
if (ze.isDirectory()) {
Log.e("upZipFile", ze.getName());
String dirstr = folderPath + ze.getName();
dirstr =new String(dirstr.getBytes("8859_1"), "GB2312");
File f =new File(dirstr);
f.mkdir();
continue;
}
OutputStream os =new BufferedOutputStream(new FileOutputStream(getRealFileName(folderPath, ze.getName())));
InputStream is =new BufferedInputStream(zfile.getInputStream(ze));
int readLen =0;
while ((readLen = is.read(buf, 0, 1024)) != -1) {
os.write(buf, 0, readLen);
}
nowLength +=1;
event.SiteFileManagetProcess(nowLength, 201);
is.close();
os.close();
}
event.SiteFileManagetFinishEvent("");
if (zipFile !=null) {
boolean delete = zipFile.delete();
Log.e("BaseFileUtil1", delete +"");
}
zfile.close();
return 0;
}
/**
* 给定根目录,返回一个相对路径所对应的实际文件名.
*
* @param baseDir 指定根目录
* @param absFileName 相对路径名,来自于ZipEntry中的name
* @return java.io.File 实际的文件
*/
public static FilegetRealFileName(String baseDir, String absFileName) {
String[] dirs = absFileName.split("/");
File ret =new File(baseDir);
String substr =null;
if (dirs.length 1) {
for (int i =0; i dirs.length -1; i++) {
substr = dirs[i];
try {
//substr.trim();
substr =new String(substr.getBytes("8859_1"), "GB2312");
}catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
ret =new File(ret, substr);
}
if (!ret.exists())
ret.mkdirs();
substr = dirs[dirs.length -1];
try {
substr =new String(substr.getBytes("8859_1"), "GB2312");
}catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
ret =new File(ret, substr);
return ret;
}
return ret;
}
* 复制zip 压缩文件到 本地
* @param strOutFileName 本地文件路径
* @param zipName assets 文件名称需要带文件后缀 xx.zip
* @throws IOException
*/
public static void copyBigDataToSD(Context context, String strOutFileName, String zipName)throws IOException {
InputStream myInput;
OutputStream myOutput =new FileOutputStream(strOutFileName);
//操作assets 文件
myInput = context.getAssets().open(zipName);
byte[] buffer =new byte[1024];
int length = myInput.read(buffer);
while (length 0) {
myOutput.write(buffer, 0, length);
length = myInput.read(buffer);
}
myOutput.flush();
myInput.close();
myOutput.close();
}

java怎样读取html文件
java读取html文件跟读取普通文件一样,都是使用输入输出流,但是java读取html文件之后还需要解析,使用Jsoup对html进行解析。下面是一个java读取带表格的任意html文件,并把html文件转换成excel的例子。
要求: 要求能够实现给出任意带table表格的html文件,生成与表格相同内容的excel文件,附件可以作为测试文件,提供给定的roster.html文件,通过java代码,实现生成与html页面的table相同样式的roster.xls文件。
首先看roster.html:
java代码:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class HTMLTOExcel {
public static void main(String args[]) throws IOException{
///读取classpath目录下面的路径
String path=HTMLTOExcel.class.getResource("/").getPath();
path+="roster.html";
toExcel(path,"roster");
}
//得到Document并且设置编码格式
public static Document getDoc(String fileName) throws IOException{
File myFile=new File(fileName);
Document doc= Jsoup.parse(myFile, "GBK","");
return doc;
}
///这个方法用于根据trs行数和sheet画出整个表格
public static void mergeColRow(Elements trs,WritableSheet sheet) throws RowsExceededException, WriteException{
int[][] rowhb=new int[300][50];
for(int i=0;itrs.size();i++){
Element tr=trs.get(i);
Elements tds=tr.getElementsByTag("td");
int realColNum=0;
for(int j=0;jtds.size();j++){
Element td=tds.get(j);
if(rowhb[i][realColNum]!=0){
realColNum=getRealColNum(rowhb,i,realColNum);
}
int rowspan=1;
int colspan=1;
if(td.attr("rowspan")!=""){
rowspan = Integer.parseInt(td.attr("rowspan"));
}
if(td.attr("colspan")!=""){
colspan = Integer.parseInt(td.attr("colspan"));
}
String text=td.text();
drawMegerCell(rowspan,colspan,sheet,realColNum,i,text,rowhb);
realColNum=realColNum+colspan;
}
}
}
///这个方法用于根据样式画出单元格,并且根据rowpan和colspan合并单元格
public static void drawMegerCell(int rowspan,int colspan,WritableSheet sheet,int realColNum,int realRowNum,String text,int[][] rowhb) throws RowsExceededException, WriteException{
for(int i=0;irowspan;i++){
for(int j=0;jcolspan;j++){
if(i!=0||j!=0){
text="";
}
Label label = new Label(realColNum+j,realRowNum+i,text);
WritableFont countents = new WritableFont(WritableFont.TIMES,10); // 设置单元格内容,字号12
WritableCellFormat cellf = new WritableCellFormat(countents );
cellf.setAlignment(jxl.format.Alignment.CENTRE);//把水平对齐方式指定为居中
cellf.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE);//把垂直对齐方式指定为居
label.setCellFormat(cellf);
sheet.addCell(label);
rowhb[realRowNum+i][realColNum+j]=1;
}
}
sheet.mergeCells(realColNum,realRowNum, realColNum+colspan-1,realRowNum+rowspan-1);
}
public static int getRealColNum(int[][] rowhb,int i,int realColNum){
while(rowhb[i][realColNum]!=0){
realColNum++;
}
return realColNum;
}
///根据colgroups设置表格的列宽
public static void setColWidth(Elements colgroups,WritableSheet sheet){
if(colgroups.size()0){
Element colgroup=colgroups.get(0);
Elements cols=colgroup.getElementsByTag("col");
for(int i=0;icols.size();i++){
Element col=cols.get(i);
String strwd=col.attr("width");
if(col.attr("width")!=""){
int wd=Integer.parseInt(strwd);
sheet.setColumnView(i,wd/8);
}
}
}
}
//toExcel是根据html文件地址生成对应的xls
public static void toExcel(String fileName,String excelName)throws IOException{
Document doc=getDoc(fileName);
String title = doc.title();
///得到样式,以后可以根据正则表达式解析css,暂且没有找到cssparse
Elements style= doc.getElementsByTag("style");
///得到Table,demo只演示输入一个table,以后可以用循环遍历tables集合输入所有table
Elements tables= doc.getElementsByTag("TABLE");
if(tables.size()==0){
return;
}
Element table=tables.get(0);
//得到所有行
Elements trs = table.getElementsByTag("tr");
///得到列宽集合
Elements colgroups=table.getElementsByTag("colgroup");
try {
//文件保存到classpath目录下面
String path=HTMLTOExcel.class.getResource("/").getPath();
path+=excelName+".xls";
System.out.println(path);
WritableWorkbook book = Workbook.createWorkbook(new File(path));
WritableSheet sheet = book.createSheet("人事关系", 0);
setColWidth(colgroups,sheet);
mergeColRow(trs,sheet);
book.write();
book.close();
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
}
}
}
解析html文件的例子文档地址:
关于html读写文件和html读取文本内容的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
