如果我调用IOUtils.toString(reader);,它会返回正确的字符串值。第二个调用返回""。读卡器不支持重置
我该如何解决这种情况?
发布于 2011-05-30 06:44:37
如果不支持mark()和reset(),就不能让Reader“重新可读”。但是,您可以使用前面展示的调用返回的String多次创建StringReader,并根据需要读取它们(或者在单个实例上使用mark()和reset()根据需要重新读取它)。
发布于 2011-05-30 06:43:27
使用支持重置的java.io.Reader,例如CharArrayReader (请参阅http://download.oracle.com/javase/6/docs/api/java/io/CharArrayReader.html)。
如果设置了标记,BufferedReader还支持有限数量的字符的重置()。
更广泛地说,markSupported方法指示您正在使用的Reader的实现是否支持标记/重置(感谢Bala R指出的注释)。
https://stackoverflow.com/questions/6170881
复制相似问题