lite-ts-fs
TypeScript icon, indicating that this package has built-in type declarations

11.12.8 • Public • Published

Version

代码

FileFactoryBase - 文件工厂

const fileFacotry: FileFactoryBase;
const paths: string[];
// paths = [a,b,c]

const dir = fileFacotry.buildDirectory(...paths);
// dir = IDirectory;

const file = fileFacotry.buildFile(...paths);
// file = IFile;
  • FsFileFactory - 文件系统文件工厂
const fileFactory: FileFactoryBase = new FsFileFactory();

FsFile(IFile) - 文件

const file: IFile;
// 示例文本内容"{'a':'b','c':'d'}"
const res = await file.read<{[key:string]:string}>();
// res = {"a":"b","c":"d"};

// 示例内容
// Default:
//    port: 3000
const res = await file.readYaml();
// res = { Default: { port: 3000 } };

// 删除文件
await file.remove();

// 示例文本内容"{'a':'b','c':'d'}"
await file.write(res + '2131');
// res = "{'a':'b','c':'d'}2131";

// bFile内容: '12345'
const bFile: IFile;
const opt: {
    paths: stirng;
    isForce?: boolean;
}
await file.copyTo(opt);
const res = await bFile.readString();
// res = "{'a':'b','c':'d'}2131";

const cFile: IFile;
const res = await cFile.exists();
// res = false;
const res = await cFile.readString();
// res = '';
await bFile.moveTo(cFile.path);
const res = await cFile.readString();
// res = "{'a':'b','c':'d'}2131";

FsDirectory(IDirectory) - 目录

const directory: IDirectory;
const res = await directory.exists();
// res = boolean;

// 创建目录 recursive:boolean-> 是否递归创建路径
const recursive: boolean;
await directory.create(recursive);

const subDirectorys = await directory.findDirectories();
// subDirectorys = IDirectory[];

const files = await directory.findFiles();
// files = IFile[]

// 删除目录
await directory.remove();

// 当目标文件存在时,如果 opts.isForce = true 是则覆盖,否则抛出异常
type opt = {
    path:string[],
    isForce?: boolean
};
await directory.copyTo(opt);

// 移动目录
const bDirectory: IDirectory;
await directory.moveTo(bDirectory);

// 查询目录内容
const res = await directory.read();
// res: string[] 目录名列表

Readme

Keywords

Package Sidebar

Install

npm i lite-ts-fs

Weekly Downloads

12

Version

11.12.8

License

GPL-3.0

Unpacked Size

63.7 kB

Total Files

33

Last publish

Collaborators

  • ahl5esoft