0

無差別モードでイーサネットからパケットをキャプチャし、.csv ファイルに書き込む ac プログラムを作成しました。

それは次のとおりです。

ここに画像の説明を入力

しかし、次のようにcsvファイルが必要です:

ここに画像の説明を入力

どうすればいいですか?csv ファイルに書き込むためのコードは次のとおりです。

int main()
{
/* declarations*/  
logfile=fopen(filename,"w+");
/*related stuffs*/
}
void print_udp_packet(unsigned char *Buffer , int Size)
{     
/*ip header length related codes*/     

  char str[] = "UDP";   
  fprintf(logfile , "Type:%s,SA:%d,DA:%d,UDP Length:%d,UDP Checksum:%d\n"  
  ,str,ntohs(udph->source),ntohs(udph->dest),ntohs(udph->len),ntohs(udph->check));

}

\n次の行と列にandを使用し,ましたが、上記の出力のようにできませんか?

[回答に記載されている編集後]

ここに画像の説明を入力

4

2 に答える 2

0

正解しました。ここにあります:表示ステートメント\nから削除されましたfprintf

fprintf(logfile , "Type,Source Port,Destination Port,UDP Length,UDP Checksum"); 


fprintf(logfile , "\n%s,%d,%d,%d,%d\n","UDP",ntohs(udph->source),ntohs(udph-

>dest),ntohs(udph->len),ntohs(udph->check));
于 2013-11-30T10:18:23.223 に答える