Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- byte odczytaj(String nazwa, StringBuilder bufor, int od_bajtu, int ile_bajtow) // 0 - sukces, -1 - zbyt dluga nazwa, -2 - plik nie istnieje, -3 - wyjscie poza zakres pamieci pliku
- {
- byte wezel = czy_istnieje(nazwa);
- if(wezel >= 0)
- {
- if ((od_bajtu >= 0) && ((i_wezly[wezel].rozmiar - ile_bajtow - od_bajtu) >= 0) )
- {
- int ostatni_blok_wolna_pamiec;
- if ((i_wezly[wezel].rozmiar % 32 == 0) && (i_wezly[wezel].rozmiar > 0))
- {
- ostatni_blok_wolna_pamiec = 0;
- }
- else
- {
- ostatni_blok_wolna_pamiec = 32 - (i_wezly[wezel].rozmiar % 32);
- }
- int od_bloku = od_bajtu / 32;
- int pozostala_pamiec_w_bloku = 32 - (od_bajtu % 32);
- bufor.setLength(0);
- for (int i = od_bajtu + 1; i <= ile_bajtow; i++)
- {
- if(ostatni_blok_wolna_pamiec > 0)
- {
- bufor.append(bloki[(byte)(bloki[i_wezly[wezel].blok_indeksowy * 32 + od_bloku]) * 32 + (32 - pozostala_pamiec_w_bloku)]);
- pozostala_pamiec_w_bloku--;
- }
- else
- {
- od_bloku++;
- bufor.append(bloki[(byte)(bloki[i_wezly[wezel].blok_indeksowy * 32 + od_bloku]) * 32 + (32 - pozostala_pamiec_w_bloku)]);
- pozostala_pamiec_w_bloku = 31;
- }
- }
- }
- return -3;
- }
- return wezel;
- }
- byte wpisz(String nazwa, String dane, int od_bajtu) // 0 - sukces, -1 - zbyt dluga nazwa, -2 - plik nie istnieje, -3 - brak pamieci, -4 - wyjscie poza zakres pamieci pliku
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement