由于某种原因,我的字符串“firSTLine”没有用另一种方法拾取。这背后的原因是什么?
public static void test1()
{
..
string[] linesw = obj1.ReadToEnd().Split(new char[] { '\n' });
string firstline = linesw[1];
..
}
public static void test2()
{
..
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(firstline);
..
}
最佳答案
firstline
是一个局部变量,在其他方法中使用时超出范围。将其提升为类变量或参数。
作为类变量:
private static string firstline = String.Empty; // class variable
public static void test1()
{
..
string[] linesw = obj1.ReadToEnd().Split(new char[] { '\n' });
firstline = linesw[1];
..
}
public static void test2()
{
..
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(firstline);
..
}
或者,作为从
test2()
调用test1()
的参数:public static void test1()
{
..
string[] linesw = obj1.ReadToEnd().Split(new char[] { '\n' });
string firstline = linesw[1];
test2(firstline);
..
}
public static void test2(string firstline)...