2013-11-23 23 views
5

Sorunum, C# oluşturduğum json dosyasını okuyamıyorum. Enlem ve boylam değerlerime j'lerimde ihtiyacım var. Google haritaları web sayfası oluşturmak için bunlara ihtiyacım var. Benim js bu dosyayı bulamıyor/okuyamıyor. Bu, json dosyasını okuma/yapma yolunun doğru olup olmadığından emin değilim.Yerel pencerelerden klasördeki dosyaları okuma klasörü depola düğmesi

Bununla birlikte JSON dosyamı oluşturuyorum. BeginPositie'de 2 değişken vardır: boylam ve enlem.

 public async Task Serialize(Coordinate beginPositie) 
     { 
     string json = JsonConvert.SerializeObject(beginPositie); 

     StorageFolder localFolder = ApplicationData.Current.LocalFolder; 

     StorageFile MarkersFile = await localFolder.CreateFileAsync("markers.json", CreationCollisionOption.ReplaceExisting); 

     using (IRandomAccessStream textStream = await MarkersFile.OpenAsync(FileAccessMode.ReadWrite)) 
     { 
      using (DataWriter textWriter = new DataWriter(textStream)) 
      { 
       textWriter.WriteString(json); 
       await textWriter.StoreAsync(); 
      } 
     } 
    } 

JS'deki JSON dosyasını okumak için kullandığım işlev budur. "Windows" bulunamadı ve bunun nedenini bilmiyorum. Kodları zaten ekledim, js için uzantı SDK'yı kurdum ama bir sebepten dolayı bu SDK'ya referans ekleyemiyorum.

function getJSON() { 
//var uri = new Windows.Foundation.Uri('ms-appdata:///local/markers.json'); 
//json = Windows.Storage.StorageFile.getFileFromApplicationUriAsync(uri); 
$.ajax({ 
    url: "ms-appdata:///local/markers.json", 
    success: function (data) { 
     json = JSON.parse(data); 
    } 
}); 

} ApplicationData sınıfının localFolder mülkiyet dışarı

cevap

2

kontrol edin. Bu kod, aradığınız dosya verilerini almalıdır:

Windows.Storage.ApplicationData.current.localFolder.getFileAsync("markers.json").done(
function (file) { 
    Windows.Storage.FileIO.readTextAsync(file).done(
     function (fileContent) { 
      //'fileContent' contains your JSON data as a string 
     }, 
     function (error) { 
      //file couldn't be read - handle the error 
     }); 
}, 
function (error) { 
    //file not found, handle the error 
});