草庐IT

java - DataInputStream\DataOutputStream 的性能

我目前正在使用缓冲流来读写一些文件。在这两者之间,我做了一些数学处理,其中一个符号是一个字节。阅读:InputStreaminput=newFileInputStream(outputname)input.read(byte[]b,intoff,intlen)写:OutputStreamoutput=newBufferedOutputStream(newFileOutputStream(outputname),OUTPUTBUFFERSIZE)output.write((byte)byteinsideaint);现在我需要添加一些标题数据,并支持短符号。我想使用DataInputStr

java - 适当释放I/O资源

我想知道释放文件资源/句柄的最佳/合适方法是什么。繁体代码,BufferredInputStreamstream=nulltry{----stream=newBufferredInputStream(newFileInputStream());----}finally{if(stream!=null){stream.close()}文件句柄是通过单独关闭BufferredInputStream.close释放还是需要显式调用底层stream(即FileInputStream.close())。[FilterOutputStream.close]方法的Javadoc指定它也将显式关闭底层

java - 使用自定义字体 [java.io.IOException : Error reading font data.]

标题不允许我说问题,所以实际的错误信息是-java.io.IOException:Problemreadingfontdata.atjava.awt.Font.createFont(UnknownSource)atAddFont.createFont(AddFont.java:11)atMainFrame$1.run(MainFrame.java:105)atjava.awt.event.InvocationEvent.dispatch(UnknownSource)atjava.awt.EventQueue.dispatchEventImpl(UnknownSource)atjava.

java - BufferedReader 然后写入 txt 文件?

是否可以使用BufferedReader从文本文件中读取,然后在缓冲读取器读取的同时,它还使用PrintWriter将读取的行存储到另一个txt文件中? 最佳答案 如果您使用Java7并想将一个文件直接复制到另一个文件中,很简单:finalPathsrc=Paths.get(...);finalPathdst=Paths.get(...);Files.copy(src,dst);如果你想逐行读取再写入,像上面一样抓取src和dst,然后做:finalBufferedReaderreader;finalBufferedWriterwr

java - 在 Java 中从 PNG 到 JPG 的转换将白色变为红色

这个问题在这里已经有了答案:JPEGimagewithwrongcolors(10个答案)关闭4年前。在使用转换图像时UploadedFileuf;//asaparemeterinfunction;PrimeFacesObject;BufferedImageold=ImageIO.read(uf.getInputstream());ByteArrayOutputStreamtemp=newByteArrayOutputStream();ImageIO.write(old,"jpg",temp);白色变成红色..http://www.primefaces.org/showcase/ui/

java - 磁盘空间不足会导致 java.lang. io。 EOF异常

今天在java序列化和反序列化中遇到了奇怪的行为(“奇怪”是因为我不明白)我正在对linux共享目录中的对象进行序列化和反序列化。虽然序列化一切都没有任何问题,但是当我试图反序列化同一个文件时它抛出java。io。EOFException。此外,反序列化仅对这个新创建的文件失败,并且对该目录中的所有其他旧文件有效。所以我在互联网上进行了搜索,发现一个帖子说磁盘空间不足也可能是导致此错误的原因。所以我清理了一些临时文件,瞧,它起作用了。我不明白低磁盘空间如何只影响反序列化而不影响序列化?我正在使用apachecommonsSerializationUtils类。下面是序列化和反序列化的代

java - 获取 java 异常 : java.net.MalformedURLException:无协议(protocol)

我目前正在调用以下代码行:java.net.URLconnection_url=newjava.net.URL("http://:/path");我在执行时得到了上面的异常。关于为什么会发生这种情况的任何想法? 最佳答案 作为旁注,您应该使用URI因为JavaURL类被搞砸了。(我相信equals方法) 关于java-获取java异常:java.net.MalformedURLException:无协议(protocol),我们在StackOverflow上找到一个类似的问题:

java - 如何在 QtJambi 中获取标准输入、标准输出、标准错误文本流的 QIODevice 实例?

我想获取代表标准IO流(stdin、stdout、stderr)的QIODeviceQtJambi,这样我就可以在可以读取或写入新行时得到通知。 最佳答案 好吧,如果你只想为那些实现QIODevice,你可以使用类似的东西QFilestdin=newQFile();stdin.open(0,newQIODevice.OpenMode(QIODevice.OpenModeFlag.ReadOnly));QFilestdout=newQFile();stdout.open(1,newQIODevice.OpenMode(QIODevic

java - ANTLR @header、@parser、superClass 选项和基本文件 io (Java)

我想对基本文件io(Java)使用解析器操作,例如。G。ANTLR语法中的PrintWriter。我必须使用superClass选项还是可以使用@header?在这两种情况下,我如何声明PrintWriter对象以及我必须如何处理异常? 最佳答案 选项superClass=...用于让您的Parser扩展自定义类。所以,我认为这不是您想要的。@header部分中的所有内容都将放在Parser类的开头。这用于导入类:@header{importjava.io.PrintWriter;}请注意,@header{...}是@parser:

java - 原子地写两个文件

我面临一个问题,我没有一个干净的解决方案。我正在编写一个Java应用程序,该应用程序将某些数据存储在一组有限的文件中。我们没有使用任何数据库,只是普通文件。由于某些用户触发的操作,某些文件需要更改。我需要这是一个全有或全无的操作。也就是说,要么更新所有文件,要么一个都不更新。例如,如果5个文件中的2个被更改,而其他3个不是由于某些IOException而发生更改,那将是灾难性的。实现此目标的最佳策略是什么?嵌入内存数据库(如hsqldb)是获得这种原子性/事务行为的充分理由吗?非常感谢! 最佳答案 IMO的安全方法是:备份维护已处理