### Godot version

v4.0.3.stable.official [5222a99f5]

### System information

win10 21H2,Vulkan API 1.2.0

### Issue description

I'm for use `"Beta: Use Unicode UTF-8 for worldwide language support"`
The file name will display as normal, but `ZIPReader.read_file()` is still garbled

I tried using 7zip Packing files, 
Disable `"Beta: Use Unicode UTF-8 for worldwide language support"` 
Is still displayed normally, but `ZIPReader.read_file()`  is still garbled

![testzip](https://github.com/godotengine/godot/assets/104408400/9f064ed4-a4a5-472d-902d-97a77ba1c79d)


### Steps to reproduce

run node.tscn, look error reporting.

### Minimal reproduction project

[test_zip.zip](https://github.com/godotengine/godot/files/11873912/test_zip.zip)

zipWriteInFileInZip(p_zip, target.utf8().get_data(), target.utf8().size());
			zipCloseFileInZip(p_zip);
		} else if (da->current_is_dir()) {
			zip_folder_recursive(p_zip, p_root_path, p_folder.path_join(f), p_pkg_name);
		} else {
			bool _is_executable = is_executable(dir.path_join(f));
			OS::DateTime dt = OS::get_singleton()->get_datetime();
			zip_fileinfo zipfi;
			zipfi.tmz_date.tm_year = dt.year;
			zipfi.tmz_date.tm_mon = dt.month - 1; 
			zipfi.tmz_date.tm_mday = dt.day;
			zipfi.tmz_date.tm_hour = dt.hour;
			zipfi.tmz_date.tm_min = dt.minute;
			zipfi.tmz_date.tm_sec = dt.second;
			zipfi.dosDate = 0;
			
			
			
			uint32_t _mode = (_is_executable ? 0100755 : 0100644);
			zipfi.external_fa = (_mode << 16L) | !(_mode & 0200);
			zipfi.internal_fa = 0;
			zipOpenNewFileInZip4(p_zip,
					p_folder.path_join(f).utf8().get_data(),
					&zipfi,
					nullptr,
					0,
					nullptr,
					0,
					nullptr,
					Z_DEFLATED,