Ṣiṣe igbasilẹ ṣiṣan 16GB nipasẹ tabulẹti pẹlu 4GB ti aaye ọfẹ

Ṣiṣe igbasilẹ ṣiṣan 16GB nipasẹ tabulẹti pẹlu 4GB ti aaye ọfẹ

Iṣẹ kan:

PC kan wa laisi Intanẹẹti, ṣugbọn o ṣee ṣe lati gbe faili lọ nipasẹ USB. Tabulẹti kan wa pẹlu Intanẹẹti lati eyiti o le gbe faili yii lọ. O le ṣe igbasilẹ ṣiṣan ti o nilo lori tabulẹti rẹ, ṣugbọn aaye ọfẹ ko to. Faili ti o wa ninu ṣiṣan jẹ ọkan ati nla.

Ona si ojutu:

Mo bẹrẹ ṣiṣan lati ṣe igbasilẹ. Nigbati aaye ọfẹ ti fẹrẹ lọ, Mo da idaduro igbasilẹ naa duro. Mo so tabulẹti pọ mọ PC ati gbe faili lati tabulẹti si PC. Mo dakẹ ati iyalenu mi ni a ṣẹda faili naa lẹẹkansi ati ṣiṣan naa tẹsiwaju lati ṣe igbasilẹ bi ẹnipe ko si nkan ti o ṣẹlẹ.

Nitori otitọ pe alabara ṣiṣan ṣeto asia fọnka si faili ninu eyiti o kọ data ti o gba, eto naa ko gbiyanju lati tọju 16GB ni ẹẹkan ati pe aṣiṣe kii yoo waye nigbati o n gbiyanju lati kọ si faili ti o kọja 4GB.

Lẹhin ti tun ilana naa ṣe ni igba mẹrin, Mo gba awọn faili mẹrin lori PC mi ti o ni awọn ẹya oriṣiriṣi ti ṣiṣan kanna. Bayi gbogbo nkan ti o ku ni lati fi wọn papọ. Ilana naa jẹ pataki ni pataki. O nilo lati rọpo awọn baiti odo pẹlu iye miiran ti o ba wa ni ipo ti a fun ni ọkan ninu awọn faili mẹrin.

O dabi fun mi pe iru eto ti o rọrun yẹ ki o wa lori Intanẹẹti. Ǹjẹ́ kò sí ẹnì kankan rí irú ìṣòro bẹ́ẹ̀ rí? Ṣugbọn Mo rii pe Emi ko paapaa mọ kini awọn koko-ọrọ lati wa. Nitorinaa, Mo yara ṣẹda iwe afọwọkọ Lua kan fun iṣẹ-ṣiṣe yii ati ni bayi Mo ti ṣe iṣapeye rẹ. Eyi ni ohun ti Mo fẹ pin.

Gbigba awọn odò ni awọn ẹya ara

  1. bẹrẹ gbigba ṣiṣan lori ẹrọ akọkọ
  2. duro titi ROM ti kun
  3. sinmi gbigba lati ayelujara
  4. gbe faili lọ si ẹrọ keji ki o fi nọmba kan kun orukọ faili naa
  5. a pada si aaye akọkọ titi ti faili yoo fi gba lati ayelujara patapata

Dapọ awọn ẹya sinu faili kan

Lẹhin ti o ti gba apakan ti o kẹhin, o jẹ dandan lati gba wọn sinu gbogbo faili kan.

Iṣẹ naa rọrun:

  1. Kika gbogbo awọn ẹya ni ẹẹkan
  2. Ti o ba wa ni diẹ ninu awọn ipo kii ṣe baiti odo, lẹhinna a kọ si iṣẹjade, bibẹẹkọ a kọ odo

Išẹ merge_part gba ohun orun ti awon streams_in ti eyi ti o ka a ìka ti iwọn buffer_length ati ki o pada abajade ti awọn ẹya ti o dapọ lati oriṣiriṣi awọn okun.

function merge_part(streams_in, buffer_length)
    local out_part
    for _, stream in ipairs(streams_in) do
        local in_part = stream:read(buffer_length)

        if not out_part then
            out_part = in_part -- просто копируем часть из первого файла
        elseif in_part and #in_part > 0 then

            if #out_part < #in_part then
                out_part, in_part = in_part, out_part
            end

            if out_part ~= in_part  -- данные различаются
                and in_part:find("[^ ]")   -- есть данные в in_part
                and out_part:find(" ", 1, true) -- есть пустые места в out_part
            then 
                local find_index = 1
--[[

Išẹ string.gsub dara fun iṣẹ-ṣiṣe nitori pe yoo wa awọn ege ti o kun pẹlu awọn odo ati fi ohun ti a fi fun u.

--]]
                out_part = out_part:gsub(" +", function(zero_string)

                    if #in_part < find_index then
                        return -- не на что менять
                    end
--[[

string.gsub ko ṣe afihan ipo ti a ti rii ibaamu naa. Nitorinaa, a ṣe wiwa ni afiwe fun ipo naa zero_string lilo iṣẹ naa string.find. O to lati wa baiti odo akọkọ.

--]]
                    local start_index = out_part:find(" ", find_index, true)
                    find_index = start_index + #zero_string

--[[

Bayi ti o ba wọle in_part data wa fun out_part da wọn.

--]]
                    if #in_part >= start_index then
                        local end_index = start_index + #zero_string - 1
--[[

Ge lati in_part apakan ti o baamu ọkọọkan ti awọn odo.

--]]
                        local part = in_part:sub(start_index, end_index)

                        if (part:byte(1) ~= 0) or part:find("[^ ]") then
--[[

В part data wa.

--]]
                            if #part == #zero_string then
                                return part
                            else
--[[

part wa ni jade lati wa ni kere ju a ọkọọkan ti odo. Jẹ ki a ṣe afikun rẹ pẹlu wọn.

--]]
                                return part..zero_string:sub(1, end_index - #in_part)
                            end
                        end
                    end
                end)
            end
        end
    end
    return out_part
end

ipari

Nitorinaa, a ni anfani lati ṣe igbasilẹ ati pejọ faili yii lori PC kan. Lẹhin iṣọpọ, Mo fa faili ṣiṣan jade lati tabulẹti. Mo ti fi sori ẹrọ a odò ni ose lori mi PC ati ki o ṣayẹwo awọn faili pẹlu o.

Apakan ti o gbasilẹ kẹhin lori tabulẹti le jẹ osi lori pinpin, ṣugbọn o nilo lati mu atunwo awọn apakan ṣiṣẹ ṣaaju eyi ki o ṣii faili naa ki o ma ṣe igbasilẹ lẹẹkansi.

Lo:

  1. Flud odò onibara lori tabulẹti.
  2. Onibara Torrent qBittorent lori PC.
  3. Lua akosile

orisun: www.habr.com

Fi ọrọìwòye kun