随机流实现有一个文件abc.txt,有内容 abcde 获取里面的 bc 与 ce打印到控制台
2条回答 默认 最新
- 金戈鐡馬 2023-07-19 22:34关注
要实现从文件中获取随机字符并打印到控制台,可以使用Java的随机访问文件流(RandomAccessFile)来实现。下面是一个示例代码:
import java.io.IOException; import java.io.RandomAccessFile; public class RandomAccessFileExample { public static void main(String[] args) { try { RandomAccessFile file = new RandomAccessFile("abc.txt", "r"); long fileSize = file.length(); int startPos = (int) (Math.random() * (fileSize - 1)); // 移动到随机位置 file.seek(startPos); // 读取两个字符 char[] chars = new char[2]; chars[0] = (char) file.readByte(); chars[1] = (char) file.readByte(); // 打印字符到控制台 System.out.println(chars[0] + "" + chars[1]); file.close(); } catch (IOException e) { e.printStackTrace(); } } }
在这个示例中,首先创建一个RandomAccessFile对象来打开abc.txt文件,并获取文件的大小。然后,使用Math.random()方法生成一个随机的起始位置,该位置在文件大小范围内。接下来,使用file.seek()方法将文件指针移动到随机位置。然后,使用file.readByte()方法读取两个字节,并将其转换为字符。最后,将这两个字符打印到控制台。
请注意,这个示例假设abc.txt文件是文本文件,其中的内容是ASCII字符。如果文件中的内容是Unicode字符或者其他编码方式,需要适当地修改代码来处理。
解决 无用评论 打赏 举报