java file to inputstream以及New Document From InputStream读取和写入文件操作实例代码
2015-11-26 14:51
1201 查看
A. http://www.java2s.com/Code/Java/XML/NewDocumentFromInputStream.htm
New Document From InputStreamimport java.io.IOException; import java.io.InputStream; import java.io.StringReader; import java.io.StringWriter; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.Iterator; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.InputSource; import org.xml.sax.SAXException; /******************************************************************************* * Copyright (C) 2007 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. ******************************************************************************/ /** * Various XML utilities. * * @author simonjsmith, ksim * @version 1.1 - ksim - March 6th, 2007 - Added functions regarding streaming * @version 1.2 - ksim - March 10th, 2007 - Added functions regarding DOM *manipulation */ public class Utils { public static Document newDocumentFromInputStream(InputStream in) { DocumentBuilderFactory factory = null; DocumentBuilder builder = null; Document ret = null; try { factory = DocumentBuilderFactory.newInstance(); builder = factory.newDocumentBuilder(); } catch (ParserConfigurationException e) { e.printStackTrace(); } try { ret = builder.parse(new InputSource(in)); } catch (SAXException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return ret; } }
B. http://www.zuidaima.com/share/1758442014903296.htm
java通过InputStream读取和写入文件操作实例代码
1. File to InputStream1 | File file = new File( "file.xml" ); |
2 | InputStream inputStream = new FileInputStream(file); |
01 | InputStream inputStream = new FileInputStream( "file.xml" ); |
02 |
03 | OutputStream outputStream = new FileOutputStream( "file-new.xml" ); |
04 |
05 | int bytesWritten = 0 ; |
06 | int byteCount = 0 ; |
07 |
08 | byte [] bytes = new byte [ 1024 ]; |
09 |
10 | while ((byteCount =inputStream.read(bytes)) != - 1 ) |
11 | { |
12 | outputStream.write(bytes, bytesWritten, byteCount); |
13 | bytesWritten += byteCount; |
14 | } |
15 | inputStream.close(); |
16 | outputStream.close(); |
C. http://stackoverflow.com/questions/11100677/file-to-inputstream
[code][code] InputStream is; try { is = new FileInputStream("c://filename"); is.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return is;FileInputStream is an inputStream.
[code]FileInputStream fis = new FileInputStream("c://filename"); InputStream is = fis; fis.close(); return is;
Of course, this will not do what you want it to do; the stream you return has already been closed. Just return the FileInputStream and be done with it. The calling code should close it.
-------------------------------------------------------------------------------------------------------------------------------
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
import java.util.Collection;
import java.util.Hashtable;
import java.util.Properties;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
DocumentBuilderFactory df = javax.xml.parsers.DocumentBuilderFactory.newInstance();
DocumentBuilder db = df.newDocumentBuilder();
// File file = new File(css_template_file);
// InputStream in = new InputStream(new FileOutputStream(file));//In
FileInputStream fis = new FileInputStream(css_template_file);
InputStream in = fis;
fis.close();
Document dom = db.parse(new InputSource(in));
改进完成,mark 一下。
相关文章推荐
- spring的aop
- 【leetcode】【46】Permutations
- JAVA基础之基本规则
- 【leetcode】【77】Combinations
- strace 调试java代码使用介绍
- Thinking in Java 整理笔记:类型信息
- Java的Struts框架简介与环境配置教程
- Spring 引入properties配置文件的方式
- Java 开源网址
- 解决Eclipse semantic error
- Java Eclipse部分图标汇总
- Spring Mock--用于Spring 的单元测试
- 将Java Project打包成jar,并生成exe
- 【leetcode】【74】Search a 2D Matrix
- Java实现的并发任务处理实例
- java.net.SocketImpl
- Java封装例题
- 【leetcode】【162】Find Peak Element
- 黑马程序员---Java基础篇之JDK的安装和介绍
- Eclipse如何安装JD-Eclipse反编译插件