finish fragment files copy

This commit is contained in:
Burgess Leo
2025-05-22 13:03:09 +08:00
parent 0c98dfecda
commit 3347abe02f
8 changed files with 252 additions and 96 deletions

View File

@@ -1,14 +1,7 @@
from files_utils.files_list import GetFilesDBNodeInfo, GetFilesDBPathInfo, SortFragmentsByStartByte
from files_utils.files_save import CopyFileFromBytes
def GetSortFragments(files_list: list) -> list:
path_info = GetFilesDBPathInfo(db_path="./src/db_ntfs_info.db", table_name="db_path", files_path=files_list)
node_info = GetFilesDBNodeInfo(db_path="./src/db_ntfs_info.db", table_name="db_node", path_records=path_info)
result = SortFragmentsByStartByte(node_info)
return result
from files_utils.files_save import CopySingleFragmentFiles, CopyMultiFragmentFiles
from files_utils.files_sort import GetSortFragments
fragment_lists = {}
test_files = [
r"Y:\CloudMusic\AGA - MIZU.mp3",
r"Y:\CloudMusic\AGA - 一.mp3",
@@ -20,7 +13,10 @@ test_files = [
r"Y:\CloudMusic\Color Music Choir - Something Just Like This (Live).mp3"
]
sort_fragments = GetSortFragments(test_files)
sort_fragments = GetSortFragments(db_path="./src/db_ntfs_info.db", files_list=test_files)
for item in sort_fragments:
if item["extent_count"] == 1:
CopyFileFromBytes(item, target_path=r"Z:\test_files")
extent_count = item['extent_count']
if extent_count == 1:
CopySingleFragmentFiles(item, target_path=r"Z:\test_files")
elif extent_count > 1:
CopyMultiFragmentFiles(item, fragment_lists=fragment_lists, target_path=r"Z:\test_files")