2016-03-28 17 views
1

Bazı verilerle birlikte bir .txt dosyam var. Verileri açısal $http hizmeti ile getiriyorum. Ancak sorun, verilerin json biçiminde olmaması, ancak json'a dönüştürebildiğim temel kurallarına sahip temel kurallarına sahip olmasıdır. İşte AngularJS düz metin, bazı basit kurallarla ayrışıyor

verilerin bir örnektir:

bazı verilerle 12 tırnak vardır (Sadece ilk satır yazmak, diğer satırlar birinci birine benzer nitelikte).

"123456789","some data","some data","some data","some data","some data","some data","some data","some data","some data","some data","some data" 

Yukarıdaki satırdan sonra, benzer bir yapıyla yeni bir satır başlar.

json gibi bir veri değişim formatına nasıl ayrışabilirim? Benzer question and answer'a bakın.

cevap

3

split'u kullanarak bir değer dizisine dönüştürebilirsiniz.

var text = '"123456789","some data","some data","some data","some data","some data","some data","some data","some data","some data","some data","some data"'; 

text = text.split(','); 
console.log(text); 

JSFiddle

+0

Çok teşekkür ederim. Ama çözümünüzde bir sorun var. Onu diziye koydunuz ve örneğin 2 numaralı metni [2] ile yazdırabilirim, Ama metin kısmı hakkında, kaç karakterin olduğunu anlamıyorum. –

+1

uh? hayır her bir değeri 0'dan başlayarak anahtar numarası ile yazdırabilirsiniz, böylece dizi [0] "123456789" olurken dizi [3] "bazı veriler" –

+0

Hayır, söylediğiniz gibi çalışmıyor. Her indeks, tüm dizgi değil, tek bir karakterdir. –

2

Diğer bir yaklaşım JSON.parse() kullanmak olacaktır:

var elements = JSON.parse('["123456789","some data","some data","some data","some data","some data","some data","some data","some data","some data","some data","some data"]'); 
console.dir(elements); 

Bu "" doğru virgül içeren değerlerini ayrıştırma avantajına sahiptir.

+0

Çok teşekkür ederim. –

İlgili konular