хочу кекать!
-
Автор темы
- #1
Нужна помощь, прям пипец.
Файлы находит, но сжирает половину названия.
Например:
Preset.json -> et.json
Файлы находит, но сжирает половину названия.
Например:
Preset.json -> et.json
code_language.lua:
if not pcall(ffi.sizeof, 'WIN32_FIND_DATAA') then
ffi.cdef[[
typedef struct _WIN32_FIND_DATAA {
uint32_t dwFileAttributes;
uint64_t ftCreationTime;
uint64_t ftLastAccessTime;
uint64_t ftLastWriteTime;
uint32_t nFileSizeHigh;
uint32_t nFileSizeLow;
uint32_t dwReserved0;
uint32_t dwReserved1;
char cFileName[260];
char cAlternateFileName[14];
} WIN32_FIND_DATAA, *PWIN32_FIND_DATAA;
void* FindFirstFileA(const char* lpFileName, PWIN32_FIND_DATAA lpFindFileData);
bool FindNextFileA(void* hFindFile, PWIN32_FIND_DATAA lpFindFileData);
bool FindClose(void* hFindFile);
]]
end
function parseFiles(folderPath)
local jsonFiles = {}
local findData = ffi.new('WIN32_FIND_DATAA')
local searchPath = folderPath .. '\\*.json'
local searchHandle = ffi.C.FindFirstFileA(searchPath, findData)
if searchHandle == ffi.cast('void*', -1) then
print('No files found or error in directory path:', folderPath)
return jsonFiles
end
repeat
local fileName = ffi.string(findData.cFileName)
if fileName:match('%.json$') then
table.insert(jsonFiles, folderPath .. '\\' .. fileName)
end
until not ffi.C.FindNextFileA(searchHandle, findData)
ffi.C.FindClose(searchHandle)
return jsonFiles
end