Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
Hello UTS
提交
30e176f0
H
Hello UTS
项目概览
DCloud
/
Hello UTS
通知
1598
Star
27
Fork
9
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
2
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
Hello UTS
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
2
Issue
2
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
30e176f0
编写于
12月 18, 2023
作者:
杜庆泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
移除 uts-file-manager 相关示例
上级
1928d1f0
变更
11
显示空白变更内容
内联
并排
Showing
11 changed file
with
0 addition
and
451 deletion
+0
-451
pages.json
pages.json
+0
-7
pages/advance/advance.vue
pages/advance/advance.vue
+0
-3
pages/resource/fileRead.uvue
pages/resource/fileRead.uvue
+0
-27
pages/resource/fileRead.vue
pages/resource/fileRead.vue
+0
-79
uni_modules/uts-file-manager/changelog.md
uni_modules/uts-file-manager/changelog.md
+0
-0
uni_modules/uts-file-manager/package.json
uni_modules/uts-file-manager/package.json
+0
-81
uni_modules/uts-file-manager/readme.md
uni_modules/uts-file-manager/readme.md
+0
-6
uni_modules/uts-file-manager/utssdk/app-android/index.uts
uni_modules/uts-file-manager/utssdk/app-android/index.uts
+0
-124
uni_modules/uts-file-manager/utssdk/app-ios/index.uts
uni_modules/uts-file-manager/utssdk/app-ios/index.uts
+0
-0
uni_modules/uts-file-manager/utssdk/interface.uts
uni_modules/uts-file-manager/utssdk/interface.uts
+0
-106
uni_modules/uts-file-manager/utssdk/unierror.uts
uni_modules/uts-file-manager/utssdk/unierror.uts
+0
-18
未找到文件。
pages.json
浏览文件 @
30e176f0
...
...
@@ -91,13 +91,6 @@
"enablePullDownRefresh"
:
false
}
},
{
"path"
:
"pages/resource/fileRead"
,
"style"
:
{
"navigationBarTitleText"
:
""
,
"enablePullDownRefresh"
:
false
}
},
{
"path"
:
"pages/advance/android/decorview"
,
"style"
:
{
...
...
pages/advance/advance.vue
浏览文件 @
30e176f0
...
...
@@ -61,9 +61,6 @@
pages
:
[{
name
:
"
图片加载示例
"
,
url
:
"
resource/resource
"
},{
name
:
"
文件读取示例
"
,
url
:
"
resource/fileRead
"
}]
},
{
...
...
pages/resource/fileRead.uvue
已删除
100644 → 0
浏览文件 @
1928d1f0
<template>
<view>
<page-head :title="title"></page-head>
</view>
</template>
<script>
export default {
data() {
return {
title: '文件读取示例-todo',
}
},
methods: {
}
}
</script>
<style>
</style>
pages/resource/fileRead.vue
已删除
100644 → 0
浏览文件 @
1928d1f0
<
template
>
<view>
<page-head
:title=
"title"
></page-head>
<view
class=
"uni-btn-v uni-common-mt"
>
<button
type=
"primary"
@
tap=
"getImageBase64"
>
读取图片base64
</button>
<button
type=
"primary"
@
tap=
"getFileText"
>
读取文本内容
</button>
</view>
</view>
</
template
>
<
script
>
import
{
getFileSystemManager
}
from
'
@/uni_modules/uts-file-manager
'
export
default
{
data
()
{
return
{
title
:
'
文件读取示例
'
,
logo
:
""
}
},
methods
:
{
getImageBase64
:
function
(
e
){
let
fileManager
=
getFileSystemManager
()
fileManager
.
readFile
({
encoding
:
'
base64
'
,
filePath
:
'
static/logo.png
'
,
success
:
function
(
res
){
console
.
log
(
"
success
"
)
console
.
log
(
res
)
},
fail
:
function
(
res
){
console
.
log
(
'
fail
'
)
console
.
log
(
res
)
},
complete
:
function
(
res
){
console
.
log
(
"
complete
"
)
console
.
log
(
res
)
}
})
},
getFileText
:
function
(
e
){
let
fileManager
=
getFileSystemManager
()
fileManager
.
writeFile
({
filePath
:
'
/test/1.txt
'
,
data
:
'
锄禾日当午,汗滴禾下土,谁知盘中餐,粒粒皆辛苦
'
,
success
:
function
(
res
){
fileManager
.
readFile
({
encoding
:
'
utf-8
'
,
filePath
:
res
.
filePath
,
success
:
function
(
res
){
console
.
log
(
"
success
"
)
console
.
log
(
res
)
},
fail
:
function
(
res
){
console
.
log
(
'
fail
'
)
},
complete
:
function
(
res
){
console
.
log
(
"
complete
"
)
}
})
},
fail
:
function
(
res
){
console
.
log
(
'
fail
'
)
},
complete
:
function
(
res
){
console
.
log
(
"
complete
"
)
}
})
}
}
}
</
script
>
<
style
>
</
style
>
uni_modules/uts-file-manager/changelog.md
已删除
100644 → 0
浏览文件 @
1928d1f0
uni_modules/uts-file-manager/package.json
已删除
100644 → 0
浏览文件 @
1928d1f0
{
"id"
:
"uts-file-manager"
,
"displayName"
:
"uts-file-manager"
,
"version"
:
"1.0.0"
,
"description"
:
"uts-file-manager"
,
"keywords"
:
[
"uts-file-manager"
],
"repository"
:
""
,
"engines"
:
{
"HBuilderX"
:
"^3.6.8"
},
"dcloudext"
:
{
"type"
:
"uts"
,
"sale"
:
{
"regular"
:
{
"price"
:
"0.00"
},
"sourcecode"
:
{
"price"
:
"0.00"
}
},
"contact"
:
{
"qq"
:
""
},
"declaration"
:
{
"ads"
:
""
,
"data"
:
""
,
"permissions"
:
""
},
"npmurl"
:
""
},
"uni_modules"
:
{
"dependencies"
:
[],
"encrypt"
:
[],
"platforms"
:
{
"cloud"
:
{
"tcb"
:
"u"
,
"aliyun"
:
"u"
},
"client"
:
{
"Vue"
:
{
"vue2"
:
"u"
,
"vue3"
:
"u"
},
"App"
:
{
"app-android"
:
"u"
,
"app-ios"
:
"u"
},
"H5-mobile"
:
{
"Safari"
:
"u"
,
"Android Browser"
:
"u"
,
"微信浏览器(Android)"
:
"u"
,
"QQ浏览器(Android)"
:
"u"
},
"H5-pc"
:
{
"Chrome"
:
"u"
,
"IE"
:
"u"
,
"Edge"
:
"u"
,
"Firefox"
:
"u"
,
"Safari"
:
"u"
},
"小程序"
:
{
"微信"
:
"u"
,
"阿里"
:
"u"
,
"百度"
:
"u"
,
"字节跳动"
:
"u"
,
"QQ"
:
"u"
,
"钉钉"
:
"u"
,
"快手"
:
"u"
,
"飞书"
:
"u"
,
"京东"
:
"u"
},
"快应用"
:
{
"华为"
:
"u"
,
"联盟"
:
"u"
}
}
}
}
}
\ No newline at end of file
uni_modules/uts-file-manager/readme.md
已删除
100644 → 0
浏览文件 @
1928d1f0
# uts-file-manager
### 开发文档
[
UTS 语法
](
https://uniapp.dcloud.net.cn/tutorial/syntax-uts.html
)
[
UTS API插件
](
https://uniapp.dcloud.net.cn/plugin/uts-plugin.html
)
[
UTS 组件插件
](
https://uniapp.dcloud.net.cn/plugin/uts-component.html
)
[
Hello UTS
](
https://gitcode.net/dcloud/hello-uts
)
\ No newline at end of file
uni_modules/uts-file-manager/utssdk/app-android/index.uts
已删除
100644 → 0
浏览文件 @
1928d1f0
import { ReadFileSuccessResult, ReadFileOptions } from "../interface.uts"
import { WriteFileSuccessResult, WriteFileOptions } from "../interface.uts"
import { GetFileSystemManager,FileSystemManager} from "../interface.uts"
import { UniErrorSubject, UniErrors } from "../unierror.uts"
import File from "java.io.File"
import Base64 from "android.util.Base64"
export { ReadFileOptions, WriteFileOptions } from "../interface.uts"
class AndroidFileSystemManager implements FileSystemManager{
public readFile(options : ReadFileOptions) {
// 判断type 是否合法
if(options.encoding != 'base64' && options.encoding != 'utf-8'){
let err = new UniError(UniErrorSubject, 1200002, UniErrors.get(1200002)!);
options.fail?.(err)
options.complete?.(err)
return
}
let filePath = UTSAndroid.convert2AbsFullPath(options.filePath)
let targetFile = new File(filePath)
if (!targetFile.exists()) {
let err = new UniError(UniErrorSubject, 1300002, UniErrors.get(1300002)! + filePath);
options.fail?.(err)
options.complete?.(err)
return
}
if (targetFile.isDirectory()) {
let err = new UniError(UniErrorSubject,1301003,UniErrors.get(1301003)!);
options.fail?.(err)
options.complete?.(err)
return
}
/**
* 文件超过16M,会超过应用内存
*/
if (targetFile.length() > 16 * 1024 * 1024) {
let err = new UniError(UniErrorSubject,1300202,UniErrors.get(1300202)!);
options.fail?.(err)
options.complete?.(err)
return
}
let currentDispatcher = UTSAndroid.getDispatcher()
/**
* 执行真正的加载行为,为了避免阻塞分发到 io任务序列
*/
UTSAndroid.getDispatcher('io').async(function(_){
let ret : ReadFileSuccessResult = {
data : ""
}
if(options.encoding == 'base64'){
// base64
let byteArray = targetFile.readBytes()
let base64Content = Base64.encodeToString(byteArray,Base64.NO_WRAP)
ret.data = base64Content
}else{
// text
let text = targetFile.readText()
ret.data = text
}
currentDispatcher.async(function(_){
options.success?.(ret)
options.complete?.(ret)
})
},null)
}
public writeFile(options : WriteFileOptions) {
// 判断type 是否合法
let nextFile = new File(UTSAndroid.getAppContext()?.getFilesDir(),options.filePath)
if(nextFile.exists() && nextFile.isDirectory()){
// 出错了,目标文件已存在,并且是个目录
let err = new UniError(UniErrorSubject,1301003,UniErrors.get(1301003)!);
options.fail?.(err)
options.complete?.(err)
return
}
let currentDispatcher = UTSAndroid.getDispatcher()
UTSAndroid.getDispatcher('io').async(function(_){
/**
* 如果上一级目录不存在,创建之
*/
if(!nextFile.parentFile!.exists()){
nextFile.parentFile!.mkdirs()
}
if(!nextFile.exists()){
nextFile.createNewFile()
}
// 写入文本,暂时只支持覆盖写入
nextFile.writeText(options.data)
let ret : WriteFileSuccessResult = {
filePath: nextFile.getPath()
}
currentDispatcher.async(function(_){
options.success?.(ret)
options.complete?.(ret)
})
},null)
}
}
export const getFileSystemManager:GetFileSystemManager = function ():FileSystemManager {
return new AndroidFileSystemManager()
};
uni_modules/uts-file-manager/utssdk/app-ios/index.uts
已删除
100644 → 0
浏览文件 @
1928d1f0
uni_modules/uts-file-manager/utssdk/interface.uts
已删除
100644 → 0
浏览文件 @
1928d1f0
export type ReadFileSuccessResult = {
data: string
}
export type ReadFileSuccessCallback = (res: ReadFileSuccessResult) => void
export type ReadFileFailCallback = (res: UniError) => void
export type ReadFileCompleteCallback = (res: any) => void
export type ReadFileOptions = {
/**
* base64 / utf-8
*/
encoding: string,
/**
* 文件路径,支持相对地址和绝对地址
*/
filePath: string,
/**
* 接口调用的回调函数
*/
success?: ReadFileSuccessCallback | null,
/**
* 接口调用失败的回调函数
*/
fail?: ReadFileFailCallback | null,
/**
* 接口调用结束的回调函数(调用成功、失败都会执行)
*/
complete?: ReadFileCompleteCallback | null
}
export type WriteFileSuccessResult = {
filePath: string,
}
export type WriteFileSuccessCallback = (res: WriteFileSuccessResult) => void
export type WriteFileFailCallback = (res: UniError) => void
export type WriteFileCompleteCallback = (res: any) => void
export type WriteFileOptions = {
/**
* 文件路径,只支持绝对地址
*/
filePath: string,
/**
* 写入的文本内容
*/
data: string,
/**
* 接口调用的回调函数
*/
success?: WriteFileSuccessCallback | null,
/**
* 接口调用失败的回调函数
*/
fail?: WriteFileFailCallback | null,
/**
* 接口调用结束的回调函数(调用成功、失败都会执行)
*/
complete?: WriteFileCompleteCallback | null
}
export interface FileSystemManager {
readFile(options: ReadFileOptions): void;
writeFile(options: WriteFileOptions): void;
}
export type GetFileSystemManager = () => FileSystemManager;
export interface Uni {
/**
* 获取文件管理器
* @uniPlatform {
* "app": {
* "android": {
* "osVer": "4.4.4",
* "uniVer": "√",
* "unixVer": "3.9.0"
* },
* "ios": {
* "osVer": "x",
* "uniVer": "x",
* "unixVer": "x"
* }
* }
* }
* @uniVueVersion 2,3 //支持的vue版本
*/
getFileSystemManager: GetFileSystemManager
}
uni_modules/uts-file-manager/utssdk/unierror.uts
已删除
100644 → 0
浏览文件 @
1928d1f0
/**
* 错误主题
*/
export const UniErrorSubject = 'uni-file-manager';
/**
* 错误码
* @UniError
*/
export const UniErrors:Map<number, string> = new Map([
[1200002, 'type error. only support base64 / utf-8'],
[1300002, 'no such file or directory'],
[1301003, 'illegal operation on a directory'],
[1300202, 'the maximum size of the file storage limit is exceeded'],
]);
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录