From d23d0b8da028c583f9183fd3b9d101801a79ce95 Mon Sep 17 00:00:00 2001 From: liyuke Date: Mon, 10 Mar 2025 16:42:55 +0800 Subject: [PATCH 1/2] =?UTF-8?q?truncateSync=20ets=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: liyuke --- .../kits/js/src/mod_fs/ani/bind_function_class.cpp | 3 +++ interfaces/kits/js/src/mod_fs/ani/file_fs_class.ets | 13 +++++++++++++ 2 files changed, 16 insertions(+) diff --git a/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp b/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp index 9498f847..1d630534 100644 --- a/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp +++ b/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp @@ -24,6 +24,7 @@ #include "stat_ani.h" #include "unlink_ani.h" #include "rmdir_ani.h" +#include "truncate_ani.h" using namespace OHOS::FileManagement::ModuleFileIO::ANI; @@ -58,6 +59,8 @@ static ani_status BindFileFs(ani_vm *vm) ani_native_function { "copyFileSync", nullptr, reinterpret_cast(CopyFileAni::CopyFileSync) }, ani_native_function { "statSync", nullptr, reinterpret_cast(StatAni::StatSync) }, ani_native_function { "rmdirSync", "Lstd/core/String;:V", reinterpret_cast(RmdirAni::RmdirSync) }, + ani_native_function {"truncateSync", "Lstd/core/Object;Lstd/core/Long;:V", + reinterpret_cast(TruncateAni::TruncateSync)}, }; return BindClass(vm, className, functions); diff --git a/interfaces/kits/js/src/mod_fs/ani/file_fs_class.ets b/interfaces/kits/js/src/mod_fs/ani/file_fs_class.ets index ba52d311..fb2fc0c3 100644 --- a/interfaces/kits/js/src/mod_fs/ani/file_fs_class.ets +++ b/interfaces/kits/js/src/mod_fs/ani/file_fs_class.ets @@ -49,6 +49,7 @@ class fileIo { static native mkdirSync(path: string, recursion: boolean): int; static native moveFileSync(src: String, dest: String, mode?: int): void; static native rmdirSync(path: string): void; + static native truncateSync(file: string | int, len?: long): void; static accessSync(path: string, mode?: AccessModeType): boolean { return fileIo.doAccessSync(path, mode); @@ -430,6 +431,18 @@ function rmdirSyncTest() { console.println("rmdirSyncTest end") } +function truncateSyncTest() { + console.println("openSyncTest begin") + let file = fileIo.openSync("/data/local/tmp/abc1.txt", 2) + console.println(`open file without mode, file.fd=${file.fd}`) + console.println("truncateSyncTest abc1.txt begin") + fileIo.truncateSync(file.fd, 2) + console.println("truncateSyncTest abc1.txt end") + console.println("truncateSyncTest abc.txt begin") + fileIo.truncateSync("/data/local/tmp/abc.txt", 2) + console.println("truncateSyncTest abc.txt end") +} + function stat_test(file: FileDataType) { let stat = fileIo.statSync(file) console.info("stat, ino is " + stat.ino); -- Gitee From e5af78b7a64ebcec90e8789d8093c0b85e2d37e0 Mon Sep 17 00:00:00 2001 From: liyuke Date: Mon, 10 Mar 2025 16:46:21 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=9B=B4=E6=AD=A3=E6=A0=BC=E5=BC=8Ftruncat?= =?UTF-8?q?eSync=20ets=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: liyuke --- interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp b/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp index 1d630534..8eb89cc5 100644 --- a/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp +++ b/interfaces/kits/js/src/mod_fs/ani/bind_function_class.cpp @@ -59,8 +59,8 @@ static ani_status BindFileFs(ani_vm *vm) ani_native_function { "copyFileSync", nullptr, reinterpret_cast(CopyFileAni::CopyFileSync) }, ani_native_function { "statSync", nullptr, reinterpret_cast(StatAni::StatSync) }, ani_native_function { "rmdirSync", "Lstd/core/String;:V", reinterpret_cast(RmdirAni::RmdirSync) }, - ani_native_function {"truncateSync", "Lstd/core/Object;Lstd/core/Long;:V", - reinterpret_cast(TruncateAni::TruncateSync)}, + ani_native_function { "truncateSync", "Lstd/core/Object;Lstd/core/Long;:V", + reinterpret_cast(TruncateAni::TruncateSync) }, }; return BindClass(vm, className, functions); -- Gitee