简体   繁体   English

如何将JavaScript(Node.js)数组转换为C#字符串数组?

[英]How to convert JavaScript (Node.js) array into C# string Array?

I created an array and I want to send it to a C# application. 我创建了一个数组,并将其发送到C#应用程序。 I want to be able to use it as a C# string array so I can create a for loop where I can run some tasks. 我希望能够将其用作C#字符串数组,以便创建一个可以运行某些任务的for循环。

Node.js (Express.js) Node.js(Express.js)

router.get('/arr', function(req,res,next) {
  var arr = ["orange", "plum", "strawberry", "lemon", "tangerine"];
  res.send(arr);
});

C# code. C#代码。

public string Arr() {
  HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://10.0.2.2/arr");
  HttpWebResponse response = (HttpWebResponse)request.GetResponse();
  StreamReader stream = new StreamReader(response.GetResponseStream());
  string final_response = stream.ReadToEnd();
  stream.Dispose();
  return final_response;
 }

C# application's editor (This is an editor where I can do very limited stuff, so there's no way to import 3rd party packages but you can do basic stuff like http get/post, etc) C#应用程序的编辑器(这是一个我可以做的工作非常有限的编辑器,因此无法导入3rd party软件包,但可以执行诸如http get / post等基本操作)

string Answer = Lib.Arr();

How can I create Answer as a string array? 如何将Answer创建为字符串数组? I tried creating Answer as string[] Answer but it says string can't get converted into string[], where am I wrong? 我尝试将Answer创建为string[] Answer但是它说string无法转换为string [],我在哪里错?

I'm new to C#. 我是C#的新手。

If all you need to parse is an array of strings, then you can do something like this: 如果您需要解析的只是字符串数组,则可以执行以下操作:

string trimmedAnswer = Lib.Arr().Trim(); // Remove whitespaces from the beginning and end
trimmedAnswer = trimmedAnswer.Substring(1, trimmedAnswer.Length - 1); // Remove [ and ] characters
string[] Answer = trimmedAnswer.Split(",").Select(s => s.Trim()).ToArray(); // Split every element by the commas, and remove any whitespaces 

But if you need to parse more complicated jsons, then you need something like this answer: https://stackoverflow.com/a/24891561/2420998 但是,如果您需要解析更复杂的json,则需要类似以下答案的内容: https ://stackoverflow.com/a/24891561/2420998

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM