ZipReader.cpp 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. // Copyright aXiuShen. All Rights Reserved.
  2. #include "ZipReader.h"
  3. #include "HAL/FileManager.h"
  4. #include "Misc/Paths.h"
  5. #include "Misc/FileHelper.h"
  6. #ifndef USING_WEBBROWSER
  7. #include "CefZipReader.h"
  8. #endif
  9. #include "cefcorelib.h"
  10. bool UZipReader::Open(const FString& zipFile, const FString& passwd) {
  11. #ifndef USING_WEBBROWSER
  12. zipFilePtr = MakeShared<UZipReaderImp>();
  13. return zipFilePtr->Open(zipFile, passwd);
  14. #else
  15. return false;
  16. #endif
  17. }
  18. bool UZipReader::IsValid() {
  19. #ifndef USING_WEBBROWSER
  20. if (!zipFilePtr.IsValid())
  21. return zipFilePtr->IsValid();
  22. #endif
  23. return false;
  24. }
  25. bool UZipReader::MoveToFirstFile() {
  26. if (!IsValid())return false;
  27. #ifndef USING_WEBBROWSER
  28. return zipFilePtr->MoveToFirstFile();
  29. #else
  30. return false;
  31. #endif
  32. }
  33. bool UZipReader::MoveToNextFile() {
  34. if (!IsValid())return false;
  35. #ifndef USING_WEBBROWSER
  36. return zipFilePtr->MoveToNextFile();
  37. #else
  38. return false;
  39. #endif
  40. }
  41. TArray<FString> UZipReader::GetAllFileNames() {
  42. if (!IsValid())return TArray<FString>();
  43. #ifndef USING_WEBBROWSER
  44. return zipFilePtr->GetAllFileNames();
  45. #else
  46. return TArray<FString>();
  47. #endif
  48. }
  49. bool UZipReader::MoveToFile(const FString& _fileName, bool caseSensitive) {
  50. if (!IsValid())return false;
  51. #ifndef USING_WEBBROWSER
  52. return zipFilePtr->MoveToFile(_fileName, caseSensitive);
  53. #else
  54. return false;
  55. #endif
  56. }
  57. FString UZipReader::GetFileName() {
  58. if (!IsValid())return FString();
  59. #ifndef USING_WEBBROWSER
  60. return zipFilePtr->GetFileName();
  61. #else
  62. return FString();
  63. #endif
  64. }
  65. int32 UZipReader::GetFileSize() {
  66. if (!IsValid())return 0;
  67. #ifndef USING_WEBBROWSER
  68. return zipFilePtr->GetFileSize();
  69. #else
  70. return 0;
  71. #endif
  72. }
  73. bool UZipReader::ReadToString(FString& data) {
  74. if (!IsValid())return false;
  75. #ifndef USING_WEBBROWSER
  76. return zipFilePtr->ReadToString(data);
  77. #else
  78. return false;
  79. #endif
  80. }
  81. bool UZipReader::ReadToDir(const FString& Dir) {
  82. if (!IsValid())return false;
  83. #ifndef USING_WEBBROWSER
  84. return zipFilePtr->ReadToDir(Dir);
  85. #else
  86. return false;
  87. #endif
  88. }
  89. bool UZipReader::ReadAllToDir(const FString& Dir) {
  90. if (!IsValid())return false;
  91. #ifndef USING_WEBBROWSER
  92. return zipFilePtr->ReadAllToDir(Dir);
  93. #else
  94. return false;
  95. #endif
  96. }