如何用JAVA提取文本文档的多个数据(给分贴)

baohui54882 2008-11-06 11:35:44
这个帖子是给分的,因为一次只能给100分呵呵,分两个帖子给分
...全文
210 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanggc1001 2008-11-06
  • 打赏
  • 举报
回复
jf
rainsilence 2008-11-06
  • 打赏
  • 举报
回复
搞了半天是一个人。。。。
sunzhyng 2008-11-06
  • 打赏
  • 举报
回复
jf
hnjd314053754 2008-11-06
  • 打赏
  • 举报
回复

baohui54883 2008-11-06
  • 打赏
  • 举报
回复
不好意思,在另外一个帖子里已经有朋友帮助过我了,我想给他们200分,可我一个帖子只能给100分,所以我开了另外一个帖子给,所以请其他朋友不用回帖了~~
rainsilence 2008-11-06
  • 打赏
  • 举报
回复

import java.io.InputStream;
import java.io.FileInputStream;
import java.io.IOException;

import java.util.ArrayList;
import java.util.List;

public class LoggerReader {

private String content = null;

private List<String> ipList = new ArrayList<String>();

private List<String> osList = new ArrayList<String>();

private static final String INTERESTING_IP = "Interesting ports on ";

private static final String NO_OS_MATCH = "No OS matches for host";

private static final String OS_DETAIL = "OS details:";

public void readByteByFileStream(String url) {
try {
readByteByStream(new FileInputStream(url));
} catch(IOException e) {
e.printStackTrace();
}
}

public void readByteByStream(InputStream in) throws IOException {
byte[] b = new byte[in.available()];
in.read(b);
content = new String(b);
in.close();
}

public void toLogger() {
for (int i = 0; i < ipList.size(); i++) {
System.out.println("IP:" + ipList.get(i));
System.out.println("OS:" + osList.get(i));
}
}

public void parse() {
for (int index = 0; index < content.length() &&
content.indexOf(INTERESTING_IP, index) != -1; index++) {
int ipStartIndex = content.indexOf(INTERESTING_IP, index);
int ipEndIndex = content.indexOf(":", ipStartIndex + INTERESTING_IP.length());
ipList.add(content.substring(ipStartIndex + INTERESTING_IP.length(), ipEndIndex));
index = ipEndIndex;

int ipNextStartIndex = content.indexOf(INTERESTING_IP, index);
int osStartIndex = content.indexOf(OS_DETAIL, index);
if (osStartIndex > ipNextStartIndex || osStartIndex == -1) {
osList.add(NO_OS_MATCH);
} else {
int osEndIndex = content.indexOf(":", osStartIndex + OS_DETAIL.length());
osList.add(content.substring(osStartIndex + OS_DETAIL.length() + 1, osEndIndex));
}
}
}
public static void main(String[] args) {

LoggerReader reader = new LoggerReader();
reader.readByteByFileStream("e:\\a.txt");
reader.parse();
reader.toLogger();
}
}


a.txt
# Nmap 4.53 scan initiated Thu Nov 06 10:16:56 2008 as: nmap -sS -O -v -oN baohui 192.168.6.20-23
Initiating OS detection (try #1) against 3 hosts
Retrying OS detection (try #2) against 2 hosts
Interesting ports on 192.168.6.21:
Not shown: 1709 filtered ports
PORT STATE SERVICE
80/tcp open http
139/tcp open netbios-ssn
443/tcp open https
445/tcp open microsoft-ds
3389/tcp open ms-term-serv
MAC Address: 00:1B:B9:85:FE:95 (Elitegroup Computer System Co.)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Microsoft Windows XP
OS details: Microsoft Windows XP SP2
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=263 (Good luck!)
IP ID Sequence Generation: Incremental

Interesting ports on 192.168.6.22:
Not shown: 1709 closed ports
PORT STATE SERVICE
135/tcp open msrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
990/tcp open ftps
1025/tcp open NFS-or-IIS
MAC Address: 00:1A:A0:3A:76:AC (Dell)
No OS matches for host
Network Distance: 1 hop

Interesting ports on 192.168.6.23:
Not shown: 1704 closed ports
PORT STATE SERVICE
21/tcp open ftp
80/tcp open http
135/tcp open msrpc
139/tcp open netbios-ssn
443/tcp open https
445/tcp open microsoft-ds
912/tcp open unknown
990/tcp open ftps
1025/tcp open NFS-or-IIS
1026/tcp open LSA-or-nterm
MAC Address: 00:1E:68:5C:19:E6 (Quanta Computer)
No OS matches for host
Network Distance: 1 hop

Read data files from: E:\nmap-4.53
OS detection performed. Please report any incorrect results at http://insecure.org/nmap/submit/ .
# Nmap done at Thu Nov 06 10:17:13 2008 -- 4 IP addresses (3 hosts up) scanned in 16.938 seconds

这是刚才给一位朋友作的提取logger的方法
思路是首先得到流,然后组成String,最后用StringApi完成功能
pauliuyou 2008-11-06
  • 打赏
  • 举报
回复
啥意思?
tz_dzg 2008-11-06
  • 打赏
  • 举报
回复
多读几次啊,或者用多线程对多个不同文件并行读取
link_1029 2008-11-06
  • 打赏
  • 举报
回复
呵呵,客气了哦,希望能对你有所帮助.
baohui54882 2008-11-06
  • 打赏
  • 举报
回复
谢谢各位的帮助,我是新手,以后可能还会有问题请教大家
希望以后还能多多帮助小弟,再次谢过!
jianghuxiaoxiami 2008-11-06
  • 打赏
  • 举报
回复
楼主象征性的意思一下吧,浮云啊~~
忙碌的布谷鸟 2008-11-06
  • 打赏
  • 举报
回复
有意思。呵呵~
FAFA2008 2008-11-06
  • 打赏
  • 举报
回复
还是第一次见到如此慷慨的楼主
zhanggc1001 2008-11-06
  • 打赏
  • 举报
回复
我是来接分地!
lihan6415151528 2008-11-06
  • 打赏
  • 举报
回复
那就接分了!
源码链接: https://pan.quark.cn/s/a4b39357ea24 ### Ubuntu 用户磁盘空间分配与 Linux 硬盘分区方案深入剖析 #### 标题与描述中的核心知识要点说明 本文件将系统性地阐释在 Ubuntu 操作系统中如何为用户科学地分配磁盘空间,并深入分析适用于 Linux 的硬盘分区策略。文件不仅会介绍基础的目录结构及其功能,还会提供具体的分区指导以及在实际操作过程中需要留意的事项。 #### 目录结构及其功能说明 - **/bin**:系统常用基础命令的存储位置。 - **/boot**:包含启动时所需文件,例如内核镜像和初始化脚本等。 - **/dev**:存放设备文件。 - **/etc**:存储系统配置信息。 - **/home**:用户个人目录,每个用户拥有独立的子目录。 - **/lib**:存放运行二进制文件所需的共享库。 - **/mnt**:用于临时挂载其他文件系统的目录,可用于挂载软盘或 CD-ROM 设备。 - **/proc**:虚拟文件系统目录,存储当前运行内核的相关信息。 - **/root**:超级用户(root)的主目录。 - **/sbin**:系统管理程序的存放位置。 - **/tmp**:临时文件存储的目录。 - **/usr**:存放只读数据,包括应用程序的可执行文件和文档等。 - **/var**:存储可变数据文件,例如日志文件和邮件队列等。 - **/X11R6**:X Window 系统的安装路径。 #### 硬盘分区策略分析 文件中强调,在 Linux 环境下进行硬盘分区时需要综合考量多个因素,以确保系统的稳定运行和性能表现。以下是一些关键的分区建议: 1. **/boot ...
代码转载自:https://pan.quark.cn/s/4f1937b2c732 Quartus Prime是由Altera公司(现已被Intel公司所收购)研发的一款集成化电子设计自动化软件,其主要应用领域在于Field-Programmable Gate Array(现场可编程门阵列)以及Complex Programmable Logic Device(复杂可编程逻辑器件)的设计、仿真、综合、布局布线以及编程等任务。在本案例中,所提及的为Quartus Prime 17.1版本的安装程序,该程序内含器件库文件及其他相关组件,适用于Windows 10 64位操作系统环境,并且已有相关测试验证其可用性。 **1. Quartus Prime概述** Quartus Prime是Altera/Intel公司FPGA设计流程的核心工具,它提供了一个集成化的开发平台,支持从设计概念到硬件实现的完整过程。该软件不仅涵盖了逻辑综合、时序分析、仿真、物理设计等基础功能,还包含了高速接口IP核、嵌入式处理器系统、内存资源管理等多种高级特性。 **2. Quartus Prime 17.1版本的新增功能** - QSYS系统构建工具的优化:17.1版本可能对QSYS系统进行了升级,使得系统集成更为便捷,支持更多的外部设备和处理器模型。 - 性能提升:可能增强了综合和布局布线的效率,降低了设计的功耗和面积。 - 新器件支持:可能会增加对最新发布的Altera FPGA和CPLD产品的支持,如Arria 10、Cyclone 10等系列产品。 - 调试功能的改进:可能强化了硬件调试工具,如JTAG调试和软件调试器的性能。 **3. 器件库文件** 器件库文件是Quartu...

62,622

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧