Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Javascript] Wczytanie pliku do tablicy
bAb1k
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 12.10.2012

Ostrzeżenie: (0%)
-----


Witam serdecznie.
Jestem jeszcze niezłym laikiem w JacaScript'cie, ale ogólne definicje programowania są mi znane.

Może wkleję na start jakiś fragment kodu, który by coś "zapoczątkował w temacie", a później opiszę o co mi chodzi:

  1. <!DOCTYPE HTML>
  2. <html lang='pl'>
  3. <head>
  4. <title>Pliki z cenami</title>
  5. <meta charset='utf-8' />
  6. </head>
  7. <body>
  8. <input type='file' id='plik' />
  9. <button id='przycisk'>Kliknij</button>
  10. <div id='wynik'></div>
  11.  
  12.  
  13. function Czytaj()
  14. {
  15. document.getElementById('wynik').innerHTML = 'cos sie dzieje';
  16. }
  17.  
  18. document.querySelector('#przycisk').onClick = Czytaj;
  19.  
  20. </script>
  21. </body>
  22. </html>


Jeszcze na wstępie chciałbym napisać, że nie oczekuję gotowców, chciałbym zrozumieć co piszę, abym nie musiał się upominać kolejnymi postami, czy tematami (IMG:style_emoticons/default/smile.gif)

A zatem: Chciałbym wczytać po przez Input 'file' i (najlepiej) od razu załadować plik (o tym za moment), albo dopiero po naciśnięciu button'a. Aktywowałoby to funkcję Czytaj() która by dany plik wczytała i rozłożyła na tablicę (jedna linijka to jeden indeks w tablicy) oraz oczywiście wyświetlenie tych linijek w jakimś div'ie albo czymkolwiek (IMG:style_emoticons/default/wink.gif) .

Z góry dziękuję za pomoc (IMG:style_emoticons/default/wink.gif)

[Dalsze czytanie na własną rękę (IMG:style_emoticons/default/haha.gif) ]

Rzecz jasna, później chcę zrobić możliwość edycji danego fragmentu tekstu oraz na koniec funkcję, która by zapisała ten plik (już edytowany) - zatem można się spodziewać również takich pytań/tematów, ale jednak chcę na start zrobić podstawę.

W C# zrobiłbym po prostu wczytanie pliku, przypisanie do zmiennej typu string i splitowanie do tablicy znakiem ENTER (\n - jak się nie mylę?) - no ale w JS to wygląda chyba jakoś inaczej, bo nie mogłem nawet odczytać tego pliku (IMG:style_emoticons/default/wink.gif)

Ten post edytował bAb1k 27.05.2015, 11:48:35
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
bAb1k
post
Post #2





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 12.10.2012

Ostrzeżenie: (0%)
-----


Jeszcze Cię tutaj zapewne pomęczę (jeżeli nie masz nic przeciwko). Plus taki, że zaczyna mi się powoli wszystko układać w jedną całośc (IMG:style_emoticons/default/wink.gif) . Minus taki, że mam kolejne pytania:


Cytat
var file = this.files[0]
I rozumiem tą linijkę na dwa sposoby.
a) Skoro 'this' oznacza input'a (czyli pewnie "tego inputa" na którym zaszło zdarzenie, to czy tablica plików oznacza, że dany input może mieć w tablicy kilka takich dokumentów/plików/etc. ?
(IMG:style_emoticons/default/cool.gif) Rozumiem też tak, że w dokumencie może być kilka 'inputów' a my pobieramy wartość z tego pierwszego [0].

Cytat
fileReader.readAsText(file);
- zatem skoro piszesz, że odpczytuje go jako tekst (String) to dlaczego nie można go wyświetlić już teraz, tylko jest potrzebna kolejna funkcja do 'załadowania' ?

Znów pewnie proste pytania i banalne. Mimo wszystko proszę o cierpliwość i wyrozumiałość (IMG:style_emoticons/default/wink.gif) .


Ten post edytował bAb1k 27.05.2015, 20:02:28
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.10.2025 - 14:01