2013-03-22 38 views
2

所以我有一个非常大的字符串,我想在每行上分开并将每行作为对象放入数组中。如果我尝试这个在MonoTouch中我得到system.string []作为返回值在monoTouch中用“ n”分隔字符串

NSArray *piecesArray = [tmpString componentsSeparatedByString:@"\n"]; 

不过:在Objective-C,这将使用工作。下面是我在C#中使用的代码:

var defaults = NSUserDefaults.StandardUserDefaults; 

      //Collecting Trace and Trace data from link + security code and converting Track and Trace data into string 
      TracTraceDataString = NSString.FromData (NSData.FromUrl 
                (NSUrl.FromString ("http://plex.janssen1877.com/app/life/" + defaults ["SecurityToken"])), 
                NSStringEncoding.UTF8); 

      //Seperating the string and putting each object in the array 
      TrackTraceDataArray = TracTraceDataString.Split (new char[] { '\n' }, 2); 


      Console.WriteLine (TrackTraceDataArray); 
+0

你还指望它会返回? – 2013-03-22 12:39:35

+0

@JohnWillemse嗯,我是新来的C#,但在Objective-C这将返回数组中的所有对象。用console.writeline我想检查数组的内容。 – 2013-03-22 12:44:17

+1

啊好吧,所以问题在那一行..我以为你很惊讶,它返回一个'string []',我的坏。你必须用'for'或'foreach'语句显式地迭代数组。 – 2013-03-22 13:06:21

回答

3

变化:

Console.WriteLine (TrackTraceDataArray); 

到:

foreach (string s in TrackTraceDataArray) 
    Console.WriteLine (s); 
+0

这不太可能数组有一个重载的ToString方法,所以这是写出项目的最好方法 – finman 2013-03-22 12:57:23

+0

谢谢你是这个问题。我认为这次拆分出现了问题。 – 2013-03-22 13:06:08