簡體   English   中英

使用JINT從JavaScript文件讀取JSON對象

[英]Reading JSON objects from javascript file using JINT

我已經提供了一個JavaScript文件,其中包含兩個這樣的JSON對象。

var languages = {"Languages":["English","Cymraeg","Deutsch"]};
var labels = [{"$JOB":["Job","Orchwyl","Auftrag",]},{"$JOB_NO":["Job Number","Rhiforchwyl","Auftragsnummer"]}];

我需要將兩個JSON對象序列化為可以在.NET中操作的對象。 我正在使用JINT這樣從文件中獲取兩個值。

Engine js = new Engine();
js.Execute(fileContents);
languages = js.GetValue("languages");
labels = js.GetValue("labels");

但是我現在不能用這兩個值做任何事情。 我無法解析JSON,這些值只是作為一個奇怪的對象數組出現,而我實際上無法確定這些值。

關於如何獲取JSON對象的任何建議?

這里沒有JSON。 這是javascript代碼,在評估時會創建javascript對象。

現在,您可以將該JavaScript對象轉換為JSON字符串。 我發現的最簡單的方法是讓JINT為我做,但是我不是Jint的專家,可能會有更好的方法。

// Run javascript, inside the interpreter, to create JSON strings
js.Execute("languages = JSON.stringify(languages)");
js.Execute("labels = JSON.stringify(labels)");
// Extract the strings from the JS environment, into your c# code as strings
// Now, you can deserialize them as normal JSON
var languagesJsonString = js.GetValue("languages").AsString();
var labelsJsonString = js.GetValue("labels").AsString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM