Autor Zpráva
esonyx
Profil *
Dobrý den, ahoj

Začal jsem si hrát s následujícím scriptem (funguje pouze ve FF):

    <html>
    <head>
    <style>
    #editor {
    border: 1px solid black;
    height: 250px;
    margin: 15px;
    padding: 10px;
    overflow: scroll;
    }
    </style>
    <script type="text/javascript">
    function load() {
    var finput = document.getElementById("data");
    var editor = document.getElementById("editor");
    var f = finput.files[0];
    if (f) {
    var r = new FileReader();
    r.onload = function(e) { editor.innerHTML = e.target.result }
    r.readAsText(f);
    } else { editor.innerHTML = "Failed to load file" }
    }
    function format(c) { document.execCommand(c, false, false); }
    </script>
    </head>
    <body>
    <h3>HTML File Reader Test</h3>
    <p>Select a file:
    <input type="file" id="data" />
    <a href="#" onclick="load()">Load</a>
    </p>
    <p>
    <a href="#" onclick="format('bold')">Bold</a>
    <a href="#" onclick="format('italic')">Italic</a>
    <a href="#" onclick="format('underline')">Underline</a>
    </p>
    <div id="editor" contentEditable="true"></div>
    </body>
    </html>  


Chtěl bych se zeptat, zda-li znáte nějakou možnost v JS, načtení pouze 30 prvních znaků v souboru (něco jako v php "fread($file,30)"). Zatím se mi povedlo načíst celý soubor a oříznout, ale při velikosti souboru 500MB je to velice neefektivní a hlavně pomalé, když potřebuji získat pouze hlavičku souboru. Předem děkuji za všechny rady :)
Darker
Profil
Tady objektu načítače souboru přiřazují eventy, a mohou zobrazovat průběh.
A je tu funkce abort, která načítání zruší.

Takže co třeba
    reader.onprogress =   function(event)
    {
      if (event.lengthComputable)
      {
        var loaded = (event.loaded / event.total);
        /*document.getElementById('pBar').style.width = (loaded * 200) + "px";*/
        if(loaded>/*neco*/) reader.abort();
      }
    };


Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0