diff --git a/utils/csv.go b/utils/csv.go index 2928be3..42a8f8d 100644 --- a/utils/csv.go +++ b/utils/csv.go @@ -23,10 +23,16 @@ var ( PrintNum = 10 ) +// 是否打印测试结果 func NoPrintResult() bool { return PrintNum == 0 } +// 是否输出到文件 +func noOutput() bool { + return Output == "" || Output == " " +} + type PingData struct { IP *net.IPAddr Sended int @@ -60,10 +66,7 @@ func (cf *CloudflareIPData) toString() []string { } func ExportCsv(data []CloudflareIPData) { - if Output == "" { - Output = defaultOutput - } - if len(data) == 0 { + if noOutput() || len(data) == 0 { return } fp, err := os.Create(Output) @@ -73,8 +76,8 @@ func ExportCsv(data []CloudflareIPData) { } defer fp.Close() w := csv.NewWriter(fp) //创建一个新的写入文件流 - w.Write([]string{"IP 地址", "已发送", "已接收", "丢包率", "平均延迟", "下载速度 (MB/s)"}) - w.WriteAll(convertToString(data)) + _ = w.Write([]string{"IP 地址", "已发送", "已接收", "丢包率", "平均延迟", "下载速度 (MB/s)"}) + _ = w.WriteAll(convertToString(data)) w.Flush() } @@ -157,5 +160,7 @@ func (s DownloadSpeedSet) Print(ipv6 bool) { for i := 0; i < PrintNum; i++ { fmt.Printf(dataFormat, dateString[i][0], dateString[i][1], dateString[i][2], dateString[i][3], dateString[i][4], dateString[i][5]) } - fmt.Printf("\n完整测速结果已写入 %v 文件,请使用记事本/表格软件查看。\n", Output) + if !noOutput() { + fmt.Printf("\n完整测速结果已写入 %v 文件,请使用记事本/表格软件查看。\n", Output) + } }