问题标签 [datainputstream]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
229 浏览

java - 无法读取使用 DataOutputStream 发送的数字

这是我的客户代码

这是服务器代码

但是我在 fromClient 中没有收到任何内容,即使我像这样更改它

我没有结果

0 投票
3 回答
12313 浏览

java - 从文本文件中读取的两个整数相加并在控制台上显示结果的程序

即使经过大量试验和错误,我也无法弄清楚如何编写一个将 2 个整数相加(从文本文件中读取)并在控制台上显示相加结果的 java 程序。

我尝试使用 FileInputStream、DataInputStream 类...

解释我到底需要什么的例子!

假设有 2 个整数存储在一个文本文件 (sample.txt) .... 让 1 和 2 为整数。

我想从文件中读取这些整数并在控制台上显示它们的总和(= 3)

任何帮助,将不胜感激 !

PS:我是Java初学者,所以请尽可能简单地编写代码!

0 投票
1 回答
114 浏览

java - 使用 DataOutput/InputStream 管理文件字节

我有一个程序将通过并创建多个不同的类实例。我想使用 DataOutputStream 将每个实例的详细信息写入文件(这是一个必要的练习,我稍后会看看其他方法),但问题是我注意到 DataOutputStream 每次新实例时都会覆盖文件创建和编写。我的第一个想法是每次编写新实例时,首先使用 DataInputStream 获取文件中的内容,保存它,然后用新实例重写它。这似乎很快就会变得混乱。对于这样的事情,最佳实践是什么?提前致谢。

编辑:我会尝试更具体地说明我在这里要做的事情。当我将要写入文件的课程上时,首先我将使用 dataInputStream.readFully 来获取文件中的所有内容。我的理解是获取文件中的所有字节并将它们存储在一个数组中。我想将此与类实例进行比较,如果该实例与文件中已有的内容匹配,则不要将此特定实例(因为它已经存在)输出到文件中。否则,追加到文件中。

0 投票
1 回答
864 浏览

java - C中DataOutputStream和DataInputStream的等价物

我用java写了这段代码

这是一个简单的套接字通信。我的服务器在 java 中,但我想尝试用 C 编写客户端。在 C 中有 DataOutputStream 和 DataInputStream 的替代方法吗?

0 投票
1 回答
1350 浏览

java - DataInputStream available() 行为用于读取大于 Integer.MAX_VALUE 字节的文件

我有一个自定义格式的二进制文件,而不是使用 DataOutputStream 编写的。文件中数据的简化格式为:IntCharIntCharIntChar...IntChar

我正在使用 DataInputStream 从该文件中读取数据,并使用 available() 来确定下一次读取是否成功。

一切都适用于小文件。但是,对于文件大小大于 Integer.MAX_VALUE 字节的大文件,available() 调用在第一次读取后返回奇怪的负值。我要读取的文件是 4751054632 字节(大约 4.8 gig)。

简化的测试代码:

输出:

而不是使用 available() 我可以在 try 块中执行 readInt() 和 readChar() 命令并在文件完成时捕获异常,但我试图理解为什么会发生这种行为。本质上,我正在寻找一种方法,如果有数据可供读取,则返回 true,如果文件已完成/流已结束,则返回 false。我认为 available()>0 会做到这一点,但我猜不是?

0 投票
3 回答
388 浏览

java - error while sending a String from C client to Java server

I send an integer from a C client to a java server and it worked perfectly. But when i tried to do the same thing with a string i got and error this is the client code to send the String

And the java code to read it

Error

java.io.EOFException at java.io.DataInputStream.readFully(DataInputStream.java:180) at java.io.DataInputStream.readUTF(DataInputStream.java:592) at java.io.DataInputStream.readUTF(DataInputStream.java:547) at ServiceRequest.run(ServiceRequest.java:43) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) at java.lang.Thread.run(Thread.java:680)

EDIT :I tried using din.readLine(),I don't have the error anymore but if i type fffffff12 on the client i got fffffff12`?7E^Ê?h in the server

0 投票
1 回答
969 浏览

android - 从内部存储器写入和读取浮点数

我需要在文件中存储三对浮点数(三点坐标),然后读取它们并进行比较。我试过这样:

但是DataOutputStream以二进制格式写入,我在我的文件中得到了这个:

BК CF BК CF BК CF

因此,当DataInputStream尝试阅读此内容时,它会变得很奇怪。我也尝试用 写FileWriter,文件内容看起来不错,但我无法正确读取浮点数。

我需要用什么来写/读浮动属性?

0 投票
3 回答
19833 浏览

java - Java,需要一个while循环才能到达eof。iewhile !eof,继续解析

我目前有一个工作解析器。它解析一个文件一次(不是我想要的),然后将解析后的数据输出到一个文件中。我需要它继续解析并附加到同一个输出文件,直到输入文件结束。看起来像这样。

除了while循环外,一切都完成了。它只在我需要它继续解析时解析一次。我正在寻找一个while循环函数来达到eof。

我也在使用 DataInputStream。是否有某种 DataInputStream.hasNext 功能?

.

0 投票
3 回答
346 浏览

java - Java - 想要通过 eof 解析。代码只解析一次

我下面的代码只解析一次数据文件。我试图让它解析整个文件。每次找到标记时,解析数据并将其附加到输出文件中。目前它成功解析数据一次然后停止。无法弄清楚如何让它循环直到 eof。数据是 4 字节对齐的,位于输入二进制文件中。

0 投票
1 回答
217 浏览

java - 在 InputStream 和 FileInputStream 之间切换的简单方法?

我写了一大段代码来读取位于 SD 卡上的文本文件。
我刚刚意识到我还需要阅读位于 Assets 文件夹中的文本文件。
查看我在下面发布的代码。
如果可以做到这一点,我的问题就解决了。
不幸的是,显然不允许以这种方式使用 IF 语句。

目前,我唯一的选择是复制所有文件读取代码并将其放在单独的 AsyncTask 线程中(我的文件读取代码当前位于 AsyncTask 后台线程中)但它大约有 250 行代码所以它如果我不必复制它会更好。
任何建议,将不胜感激。