Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何从c++;?_C++_String - Fatal编程技术网

C++ 如何从c++;?

C++ 如何从c++;?,c++,string,C++,String,我有一个特定布局的数据文件。每一行包含一个IP地址,我必须提取它,并将它与C++中的其他内容进行比较。 一行是这样的: t 0.00057/NodeList/0/DeviceList/0/$ns3::WifiNetDevice/Phy/State/Tx ns3::WifiMacHeader(数据ToDS=0,FromDS=0,MoreFrag=0,Retry=0,MoreData=0 Duration/ID=0usDA=ff:ff:ff:ff,SA=00:00:00:00:00:01,BSSID

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

t 0.00057/NodeList/0/DeviceList/0/$ns3::WifiNetDevice/Phy/State/Tx ns3::WifiMacHeader(数据ToDS=0,FromDS=0,MoreFrag=0,Retry=0,MoreData=0 Duration/ID=0usDA=ff:ff:ff:ff,SA=00:00:00:00:00:01,BSSID=00:00:00:00:00:00,FragNumber=0,SeqNumber=0)ns3::LlcSnapHeader(类型0x800)ns3::Ipv4Header(tos 0x0 DSCP默认ECN不ECT ttl 64 id 0协议17偏移量(字节)0标志[none]长度:22810.1.1.1>10.1.1.255)ns3::UdpHeader(长度:208 49153>80)有效负载(大小=200)ns3::WifiMacTrailer()

我必须提取的IP地址是10.1.1.1

文件中有10000行这样的内容

t 0.00057/NodeList/0/DeviceList/0/$ns3::WifiNetDevice/Phy/State/Tx ns3::WifiMacHeader(数据ToDS=0,FromDS=0,MoreFrag=0,Retry=0,MoreData=0 Duration/ID=0usDA=ff:ff:ff:ff,SA=00:00:00:00:00:01,BSSID=00:00:00:00:00:00,FragNumber=0,SeqNumber=0)ns3::LlcSnapHeader(类型0x800)ns3::Ipv4Header(tos 0x0 DSCP默认ECN不ECT ttl 64 id 0协议17偏移量(字节)0标志[none]长度:228 10.1.1.1>10.1.1.255)ns3::UdpHeader(长度:208 49153>80)有效负载(大小=200)ns3::WifiMacTrailer() r 0.00287433/NodeList/2/DeviceList/0/$ns3::WifiNetDevice/Phy/State/RxOk ns3::WifiMacHeader(数据ToDS=0,FromDS=0,MoreFrag=0,Retry=0,MoreData=0 Duration/ID=0usDA=ff:ff:ff:ff,SA=00:00:00:00:00:01,BSSID=00:00:00:00:00,FragnNumber=0,SeqNumber=0)ns3::LLCSNAPG头(类型0x800)ns3::IPV4(tos 0x0 DSCP默认ECN不ECT ttl 64 id 0协议17偏移量(字节)0标志[none]长度:228 10.1.1.1>10.1.1.255)ns3::UdpHeader(长度:208 49153>80)有效负载(大小=200)ns3::WifiMacTrailer()

我怎样才能得到这些IP?
有人能帮我写代码吗?

通常,你会以读取模式打开文件并读取每一行。每一行似乎都有固定的模式和格式。你可以在每一行内搜索子字符串并从中提取IP地址。例如:你可以搜索“[none]长度:”然后读取它后面的IP地址字符串(就像查找下一个空格并在这些索引之间选择子字符串)

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