我在Java中搜索了一些东西来读取文件。我发现FileInputStream
和DataInputStream
,但我想知道这个流的内部工作。有人能够清楚地解释我们的工作方式吗?FileInputStream的内部工作
回答
对于每个系统(Linux,Mac,Windows,甚至它们的不同版本),它的工作方式都不相同。这真是太棒了。你不需要知道,你只知道它被处理。你可以在每个系统上使用它。
如果你真的想知道它是如何工作的,你必须查看你正在工作的系统的jvm实现的源代码。
,从FileInputStream中源:
private native void open(String name) throws FileNotFoundException;
public native int read() throws IOException;
private native int readBytes(byte b[], int off, int len) throws IOException;
这表明它是写为每个系统不同。但是,当你想使用它时,无论你使用什么系统,都可以使用相同的代码。
要获得关于两者之间差异的明确答案(至少从严格的Java观点来看),请查看Java API(http://www.oracle.com/technetwork/java/api- 141528.html)规范了您正在使用的Java版本。在JavaSE 1.6的情况下,请查看FileInputStream和DataInputStream。
据我所知,DataInputStream对于使用输入的数据流是很有用的,而FileInputStream用于访问程序外部的文件(例如在文件系统上)。
FileInputStream
是一个以字节流的形式读取文件的类。
DataInputStream
是一个类,读取另一个流并应用转换为标准的类型(即,而不是读取字节,你可以告诉它读取4个字节的int
)。
他们服务两个完全不同的目的。
以及我正在尝试阅读文件,然后我搜索了两种方法来做到这一点: - FileInputStream fis = new FileInputStream(“C:/Users/pranay/Desktop/pranay.txt”); \t \t DataInputStream dis = new DataInputStream(fis); \t \t BufferedReader br = new BufferedReader(new InputStreamReader(dis)); \t \t或 \t \t BufferedReader br = new BufferedReader(new FileReader(“C:/Users/pranay/Desktop/pranay.txt”)); – 2011-04-18 00:31:49
- 1. Jenkins内部工作
- 2. JSF 1.2的内部工作
- 3. Fabric Composer的内部工作
- 4. 表内表不工作的内部表
- 5. 承诺内部工作
- 6. jquery插件内部工作
- 7. 内部加入不工作
- 8. $ http.delete不工作内部foreach
- 9. PHP ArrayObject内部工作
- 10. 增加由Java FileInputStream使用的内部缓冲区大小
- 11. 关于并发hashmap的内部工作
- 12. 简单的内部连接不工作
- 13. recv socket api的内部工作
- 14. C++图形库的内部工作
- 15. xcode4建筑的内部工作流程
- 16. Drupal模块内部工作的隐喻
- 17. grep的内部shell脚本不工作
- 18. PHP的内部工作原理
- 19. Java集合框架的内部工作
- 20. 工作灯:定制内部的Webservice WAR
- 21. 如何调试Rails的内部工作?
- 22. JSONP与AJAX的内部工作
- 23. spark的HiveContext如何在内部工作?
- 24. 理解的ThreadPoolExecutor内部工作
- 25. OpenGL的内部工作原理
- 26. 在C++中的矢量内部工作?
- 27. JavaScript Array.sort([compareFunc])的内部工作方式;
- 28. FileInputStream类的方法read(byte [] b)如何工作?
- 29. jQuery的:使用这个内部类的内部功能,工作作为处理
- 30. FileInputStream java.io.FileNotFoundException
您可以随时在Java源代码中阅读它们的实现,至少在您调用本地方法调用之前。 – 2011-04-17 22:41:30
你到底想知道他们是如何工作的? – squawknull 2011-04-17 22:42:06