我把一个友情链接的地址放到了link.txt文件中,然后通过:string reader;
StreamReader objReader;
objReader=File.OpenText(MapPath("link.txt"));
reader=objReader.ReaderLine();这样reader就得到了那个URL了,可是这是在那个link.txt只有一行的情况下,要是那个link.txt有多行URL,例如:
http://www.163.com
http://www.sina.com
http://www.sohu.com
http://www.csdn.net
现在我要读它的第二行,或是第四行,就是让reader得到http://www.sina.com或是http://www.sina.com要怎么做啊?

解决方案 »

  1.   

    string s = "";
    while ((s = sr.ReadLine()) != null) 
    {
    值 = s;
    }
      

  2.   

    循环直到空或者.ReadToEnd,中间用标志符隔开,再分割字符串等等
      

  3.   

    我一次只需要一个URL,用FOR全读出来就太长了哦,有一次读某一行的方法没有?要不然,就只有用楼上的方面先全读出来再用字符串分割了啊!
      

  4.   

    一次读某一行的方法没有?那最好是放在XML文件里,比如web.config<configuration>  <appSettings>
     <add key="Link1" value="http://www.163.com" />
              <add key="Link2" value="http://www.sina.com" />
              <add key="Link3" value="http://www.sohu.com" />
              ...
      </appSettings>读取的时候就简单了:
    Imports System.ConfigurationPublic Shared Function GetLink(ByVal index As Integer) As String
           Dim strLink As String = "Link" + index.ToString()
           Return ConfigurationSettings.AppSettings(strLink)
    End Function调用:
    GetLink(1) 'http://www.163.com
    GetLink(2) 'http://www.sina.com</configuration>
      

  5.   

    不好意思哦,
    </configuration> 跑到下面来了。应该是:<configuration>
      <appSettings>
     <add key="Link1" value="http://www.163.com" />
              <add key="Link2" value="http://www.sina.com" />
              <add key="Link3" value="http://www.sohu.com" />
              ...
      </appSettings>
    </configuration>
      

  6.   


    StreamReader reader = new StreamReader(MapPath("link.txt"));
    ArrayList urls = new ArrayList();
    string lineText = null;
    while((lineText = reader.ReadLine()) != null)
    {
      urls.Add(lineText);
    }string secondLineText = (string)urls[1]; //得到第二行
    string thirdLineText = (string)urls[2];  //得到第三行
      

  7.   

    sr.ReadLine()) 
    这种方式就是一次读取一行.
      

  8.   

    其实用XML最方便了.
    先定义一个XML文件
    URL.XML
    <?xml version="1.0" encoding="utf-8" ?> 
    <URLS>
      <URL>
        <url Text="Sohu" NavigateUrl="http://www.sohu.com" Target="_blank" />
        <url Text="163" NavigateUrl="http://www.163.com" Target="_blank" />
      <URL>
    <URLS>然后就在asp.net里操作这个XML文件了.
      

  9.   

    那怎么读取XML里的某一条记录赋给string url;呢我只知道用DataSet1.ReadXml(MapPath("url.xml"));全部读取后DataGrid来显示!
      

  10.   

    用XML简单点噢,我改成XML啦都不读。TXT啦
      

  11.   

    读取XML、TXT、ACCESS三种文件的时候,速度哪个最快,哪个啊慢啊?
      

  12.   

    StreamReader Read = new StreamReader(Server.MapPath("link.txt"));
    ArrayList allUrl = new ArrayList();
    string lineText = "";
    while((lineText = Read.ReadLine()].ToString()) != "")
    {
      urls.Add(lineText);
    }string URL1 = allUrl[1].ToString(); //得到第二行
    string URL2 = allUrl[2].ToString();  //得到第三行
      

  13.   

    还有一个问题就是:要提出数组中的某一项,就要用ArrayList1[id];这样,可是从Request.QueryStrign.Get("id");得到的id是string型的,无法转换成int型的啊?
      

  14.   

    楼上说的用XML的方法效率挺高的.你碰到的int型问题用Convert强制转换难道不行吗?
      

  15.   

    int.Parse(Request.QueryStrign.Get("id"))
      

  16.   

    我用过(int)id和Convert.ToInt32()都不行,int.Parse(Request.QueryString.Get("id"))这种还没用过!是什么意思哦?
      

  17.   

    int 自己的一个属性你用那两个方法不行报了什么错?不行就试试 int.Parse(Request.QueryString.Get("id").Tostring())
      

  18.   

    它说无法将string类型转换成int型!