2009-08-24 26 views
5

JavaScript'te bir yoldan bir dosya okumak ve bu dosyanın bir byte [] oluşturması mümkün mü?JavaScript dosyası byte []

+0

Bize tam olarak ne yapmaya çalıştığınız konusunda daha fazla ipucu vermelisiniz. –

cevap

5

JavaScript iki biçimini vardır. İstemci tarafında JavaScript mümkün değildir, sunucu tarafı JavaScript'te ise mümkündür. Bu nedenle, istemci tarafı veya sunucu tarafı JavaScript kullanıp kullanmadığınıza bağlıdır. istemci tarafı JavaScript çok daha yaygın olduğunu ve sunucu tarafı JavaScript kullanarak olsaydı, muhtemelen sorunun cevabını bilemez dedi

. Yani ben bir uzvun dışarı gidiyorum ve hayır, JavaScript bir yoldan okumak ve bu dosyadan bir bayt [] oluşturmak mümkün olmadığını söyleyeceğim.

(Ayrıca, bir bayttan ne anlama geldiğini belirsiz []; bu, JavaScript'i kullanırken genel bir nota değil. Java hakkında konuşmayacağınızdan emin misiniz? Java, JavaScript'ten tamamen farklı: Java byte [] bir daha yaygın bir nottur)

+1

Sadece dosyanın baytını bir diziye yükleyip yükleyemeyeceğini bilmek istediğine inanıyorum. Javascript'in bu gösterimi yok, ancak bir dizi sayı aslında aynı şeyi yapardı. Serverside javascript hakkında herhangi bir linkiniz var mı? Sunucu tarafı javascript kullanmamıştım ve nerede kullanıldığını merak ediyorum. – Zoidberg

+0

Zoidberg, http://en.wikipedia.org/wiki/Server-side_JavaScript –

+0

'a bakın Bunu sunucu tarafında javascript'te nasıl yapıyorsunuz?Şimdi 2015 yılında çok daha yaygın ama bu web sitesinde bu tür soruların tüm cevaplar ilgili ve serin bilgi için ayrılmış müşteri tarafı js – CQM

4

sayılı JavaScript bilerek o muazzam bir güvenlik riski olacaktır (yerel ve uzak) keyfi dosyalara erişmek için izin çünkü (çerezler düşünün) çok az dosya IO sahip olacak şekilde tasarlanmıştır. istemci tarafı ve sunucu tarafı:

+1

Dosya-i/o ve güvenlik riski hakkında yazmak isteyen herkes için: Tarayıcı dosyasında çalıştırılan web kaynaklı JavaScript için i/o bir güvenlik riskidir. Yine de programlama diline bağlı değildir. Burada belirtildiği gibi risk, tüm programlama dillerine temel olarak uygulanabilir. – gimpf

18

Evet, yapabilirsin - yine Firefox'ta.. Diğer tarayıcılar ileride izin vermeyi seçebilir veya seçemez.

dosyayı almaya kullanıcı için bir dosya yükleme alanı olun ve input.files Listede oku. Örneğin. document.getElementById('myuploadfield').files[0].getAsBinary(). Bu, her baytı, alacağınız bir bayt [] değerine yakın olan bir JavaScript Dizesi'nin tek bir karakterine yerleştirir.

Bu

oldukça özel bir arayüz ve muhtemelen Değil Right Thing - bu bir uygunsuz bir şekilde bir şeyler yapmaya çalışıyoruz çok mümkün çünkü, diğer yanıtlar dikkat. Bağlamsız anlatmak zor.

+1

hakkında. –

+0

+1 .. Mehmet ne dedi – rennat

3

Sizler tamamen bayrakları ne-öylesine-hiç set no-güvenlik ile çalışacak şekilde tasarlanmış mobil platformlar ve javascript unutmuş görünmektedir. Dosyalarıma, iPhone'umda çalışan javascript kodumda ulaşıyorum. Sadece kullanıcılar dosya sistemine erişemezsiniz, sadece sisteminizin geri kalanından yalıtılmış bir klasör olan kendi dosya sisteminiz. Bu sorunun tam olarak geçerli olduğu belirtilmiştir. Ayrıca - Javascript lekeleri (ikili büyük nesneler) ve yazılan dizileri de bakmalısınız. JS'de "normal" bayt, kelime ve longword dizileri ayırabilirsiniz - ancak insanlar nadiren bunları kullanır.