Załóżmy, że chciałbym zrobić merge sort na plikach dla bardzo dużych danych w przeglądarce (np wielokrotnie więcej danych niż jest RAMu w komputerze). Czy da się to w ogóle zrobić za pomocą JavaScriptowych API? Znalazłem metody do wczytywania jednego pliku po kawałku i zapisu całego pliku naraz. Są to dość słabe opcje (merge sort na plikach da się zrobić strumieniowo, nie trzeba buforować wszystkich danych naraz w pamięci). W dodatku w obu użytkownik musi wybrać plik ręcznie za każdym razem przez okienko wyboru pliku.

Interesują mnie przede wszystkim metody typu (kolejność według priorytetu):

  • odczyt z dowolnego miejsca w pliku (to w sumie już jest w zwykłym File API) i zapis (włącznie z dopisywaniem) w dowolnym miejscu w pliku (to najbardziej)
  • możliwość działania w Web Workerach
  • tworzenie i usuwanie plików w katalogu do którego użytkownik da uprawnienia

Chciałbym zobaczyć jakiś działający kod, a nie samą dokumentację w statusie draft czy innym tego typu.