首页 > 解决方案 > 如何使用c#在txt文件的每一行中设置前缀和删除字符后

问题描述

你好,我正在从这样的 Web API 获取一些 字符串

mail-lf0-f100.google.com,209.85.215.100
mail-vk0-f100.google.com,209.85.213.100
mail-ua1-f100.google.com,209.85.222.100
mail-ed1-f100.google.com,209.85.208.100
mail-lf1-f100.google.com,209.85.167.100
mail-ej1-f100.google.com,209.85.218.100
mail-pj1-f100.google.com,209.85.216.100
mail-wm1-f100.google.com,209.85.128.100
mail-io1-f100.google.com,209.85.166.100
mail-wr1-f100.google.com,209.85.221.100
mail-vs1-f100.google.com,209.85.217.100
mail-ot1-f100.google.com,209.85.210.100
mail-qv1-f100.google.com,209.85.219.100
mail-yw1-f100.google.com,209.85.161.100

它给了我一些字符串记录,我想做这个操作

  1. 我想像原来一样逐行制作

  2. 我想删除每行逗号后的所有内容

  3. 我想在示例的每一行之前设置一个前缀:

例子: Google.com to>> This is Dns: Google.com

这是我的代码。我应该编辑什么,我应该添加什么?

        string filePath = "D:\\google.txt";
        WebClient wc = new WebClient();
        string html = wc.DownloadString("https://api.hackertarget.com/hostsearch/?q=Google.com");
        File.CreateText(filePath).Close();
        string number = html.Split(',')[0].Trim();
        File.WriteAllText(filePath, number);
        MessageBox.Show("Finish");

标签: c#

解决方案


你实际上很接近。检查下面的解决方案

var filePath = @"C:\Users\Mirro\Documents\Visual Studio 2010\Projects\Assessment2\Assessment2\act\actors.txt";

WebClient client = new WebClient();
string html = client.DownloadString("https://api.hackertarget.com/hostsearch/?q=google.com");
string[] lines = html.Split(
    new[] { "\r\n", "\r", "\n" },
    StringSplitOptions.None
);

var res = lines.Select(x => (x.Split(',')[0]).Trim()).ToList();

//res.Dump();
System.IO.File.WriteAllLines(filePath, lines);

.Net 小提琴


推荐阅读