Ke hoʻoiho nei i kahi kahawai 16GB ma o kahi papa me 4GB o ka hakahaka

Ke hoʻoiho nei i kahi kahawai 16GB ma o kahi papa me 4GB o ka hakahaka

He hana:

Aia kahi PC me ka ʻole o ka Pūnaewele, akā hiki ke hoʻololi i ka faila ma o USB. Aia kahi papa me ka Pūnaewele kahi e hiki ai ke hoʻololi i kēia faila. Hiki iā ʻoe ke hoʻoiho i ke kahawai i makemake ʻia ma kāu papa, akā ʻaʻole lawa ka hakahaka. Hoʻokahi a nui ka faila i loko o ke kahawai.

Ke ala i ka hoʻonā:

Hoʻomaka wau i ke kahawai e hoʻoiho. I ka pau ʻana o ka hakahaka, hoʻomaha wau i ka hoʻoiho ʻana. Hoʻohui wau i ka papa i ka PC a hoʻoneʻe i ka faila mai ka papa i ka PC. Ua hoʻomaha wau a i koʻu pūʻiwa ua hana hou ʻia ka faila a hoʻomau ka torrent i ka hoʻoiho ʻana me he mea lā ʻaʻohe mea.

Ma muli o ka hoʻonohonoho ʻana o ka mea kūʻai aku i ka hae liʻiliʻi i ka faila kahi i kākau ai i ka ʻikepili i loaʻa, ʻaʻole hoʻāʻo ka ʻōnaehana e mālama i ka 16GB i ka manawa hoʻokahi a ʻaʻole e loaʻa kahi hewa i ka wā e hoʻāʻo ai e kākau i kahi faila ma mua o 4GB.

Ma hope o ka hana hou ʻana i ke kaʻina hana ʻehā mau manawa, loaʻa iaʻu nā faila ʻehā ma kaʻu PC me nā ʻāpana like ʻole o ka kahawai like. I kēia manawa, ʻo ka hoʻohui ʻana iā lākou. He mea maʻalahi ke kaʻina hana. Pono ʻoe e hoʻololi i ka zero bytes me kahi waiwai ʻē aʻe inā loaʻa ia ma kahi kūlana i hāʻawi ʻia i kekahi o nā faila ʻehā.

Ua manaʻo wau he polokalamu maʻalahi kēia ma ka Pūnaewele. ʻAʻohe mea i loaʻa i kēlā pilikia? Akā ʻike wau ʻaʻole maopopo iaʻu nā huaʻōlelo e ʻimi ai. No laila, ua hana wikiwiki au i palapala Lua no kēia hana a i kēia manawa ua hoʻomaikaʻi au. ʻO kēia kaʻu makemake e kaʻana like.

Ke hoʻoiho ʻana i ke kahawai ma nā ʻāpana

  1. e hoʻomaka i ka hoʻoiho ʻana i ke kahawai ma ka hāmeʻa mua
  2. e kali a piha ka ROM
  3. hoʻomaha i ka hoʻoiho ʻana
  4. e hoʻololi i ka faila i ka mea ʻelua a hoʻohui i kahi helu i ka inoa faila
  5. hoʻi mākou i ka helu mua a hiki i ka hoʻoiho piha ʻana o ka faila

Hoʻohui i nā ʻāpana i hoʻokahi faila

Ma hope o ka loaʻa ʻana o ka hapa hope, pono e hōʻiliʻili iā lākou i hoʻokahi faila holoʻokoʻa.

He maʻalahi ka hana:

  1. Heluhelu i nā māhele a pau i ka manawa hoʻokahi
  2. Inā ma kekahi ʻāpana ʻaʻole he zero byte ke kūlana, a laila kākau mākou iā ia i ka hopena, a i ʻole e kākau mākou i ka zero

kuleana pili i merge_part ʻae i kahi ʻano o nā loina streams_in e heluhelu ana i kekahi hapa o ka nui buffer_length a hoʻihoʻi i ka hopena o ka hoʻohui ʻana i nā ʻāpana mai nā loina like ʻole.

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
--[[

kuleana pili i string.gsub kūpono i ka hana no ka mea e loaʻa iā ia nā ʻāpana i hoʻopiha ʻia me nā zeros a hāʻawi i nā mea i hāʻawi ʻia iā ia.

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

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

string.gsub ʻaʻole ia e hōʻike i ke kūlana i loaʻa ai ka pāʻani. No laila, hana mākou i kahi hulina like no ke kūlana zero_string hoʻohana i ka hana string.find. Ua lawa ka loaʻa ʻana o ka byte zero mua.

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

--[[

I kēia manawa inā i loko in_part aia ka ikepili no out_part kope ia lakou.

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

ʻoki mai in_part ʻāpana e pili ana i ke kaʻina o nā zeros.

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

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

В part aia ka ʻikepili.

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

part ua emi iho ma mua o ke kaʻina o nā zeros. E hoʻohui pū kākou me lākou.

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

hopena

No laila, hiki iā mākou ke hoʻoiho a hōʻuluʻulu i kēia faila ma kahi PC. Ma hope o ka hui ʻana, huki wau i ka faila torrent mai ka papa. Ua hoʻokomo wau i kahi mea kūʻai aku torrent ma kaʻu PC a nānā i ka faila me ia.

Hiki ke waiho ʻia ka ʻāpana hope i hoʻoiho ʻia ma ka papa ma ka māhele ʻana, akā pono ʻoe e ʻae i ka nānā hou ʻana i nā ʻāpana ma mua o kēia a wehe i ka faila i ʻole e hoʻoiho hou.

Hoʻohana ʻia:

  1. ʻO Flud torrent client ma kahi papa.
  2. ʻO ka mea kūʻai aku Torrent qBittorent ma PC.
  3. Palapala lua

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka