如何在c++中从文件中获取特定字符串

How to Get a particular String From A File in c++?

本文关键字:获取 字符串 文件 c++      更新时间:2023-10-16

我有一个文件,其中包含特定布局中的数据。每一行都包含一个IP地址,我必须提取它并将其与C++中的其他地址进行比较。

有一行看起来像这样:

t 0.00057/NodeList/0/DeviceList/0/$ns3::WifiNetDevice/Phy/State/Tx ns3::WifiMacHeader 64 ID 0协议17偏移量(字节)0标志[none]长度:228110.1.1.1>110.1.1.255)ns3::UdpHeader(长度:208 49153>80)有效载荷(大小=200)ns3:;WifiMacTrailer()

我必须提取的IP地址是110.1.1.1

文件中有10000行这样的行。

t 0.00057/NodeList/0/DeviceList/0/$ns3::WifiNetDevice/Phy/State/Tx ns3::WifiMacHeader 64 ID 0协议17偏移量(字节)0标志[none]长度:228 10.1.1.1>110.1.1.255)ns3::UdpHeader(长度:208 49153>80)有效载荷(大小=200)ns3:r 0.00287433/NodeList/2/DeviceList/0/$ns3::WifiNetDevice/Phy/State/RxOk ns3::WifiMacHeader ECT ttl 64 ID 0协议17偏移量(字节)0标志[none]长度:228 10.1.1.1>110.1.1.255)ns3::UdpHeader(长度:208 49153>80)有效载荷(大小=200)ns3:;WifiMacTrailer()

如何获取这些IP?有人能帮我查一下密码吗?

通常,您会以读取模式打开文件并读取每一行。似乎每条线都是以某种固定的模式&总体安排你可以在每一行中搜索一个子字符串,并从中提取IP地址。例如:你可以搜索"[none]length:"并读取它后面的IP地址字符串(比如在这些索引之间寻找下一个空格和pick子字符串)。

如果使用MFC,则可以使用CStdioFile::ReadString读取每一行。如果您不使用MFC,可以参考本主题逐行读取文件。