# grain-sand-data
**Repository Path**: grain-sand/grain-sand-data
## Basic Information
- **Project Name**: grain-sand-data
- **Description**: 在浏览器端读写网络或文件数据的基础性类库
如果用于本地文件读写,基于本类库的grain-sand-web-fs更方便使用
如果用于网络读取与下载,基于本类库的grain-sand-net更方便使用
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2024-11-08
- **Last Updated**: 2026-01-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# gs-data
### 中文 | [English](README.md)
> 在浏览器端读写网络或文件数据的基础性类库
> 如果用于本地文件读写,基于本类库的[gs-web-fs](https://www.npmjs.com/package/gs-web-fs)更方便使用
> 如果用于网络读取与下载,基于本类库的[gs-fetch](https://www.npmjs.com/package/gs-fetch)更方便使用
>> 主要包含通过文件内容自动类型分析与扩展名分析
> 自动根据内容读取浏览器端常用数据类型
>>如:文本、图片、html、XML……等
> 还包含了一个更利于网络传输,更小于json的SimpleData类型封装
## 安装
```shell
npx yarn add gs-data
```
## 使用
### 自动判断数据类型 与 数据读取
```ts
import {parseMime,getExtensionMime,readBlob} from 'https://cdn.jsdmirror.cn/npm/gs-data/lib/index.web.js'
const blob = await fetch('https://emoji.bj.bcebos.com/yige-aigc/index_aigc/final/toolspics/15.png').then(r=>r.blob());
const mime = await parseMime(blob)//从blob分析数据类型,图片、文本、视频、切片……等类型皆支持
console.log(mime) // 打印输出 image/png
const type = await getExtensionMime(mime!)
console.log(type) // 打印输出 {ext: 'png', mime: 'image/png'}
const pkg = await readBlob(blob)
document.body.appendChild(pkg.result) //将会在页面上显示图片
console.log(pkg) //打印输出 {ext: 'png', mime: 'image/png', blob: Blob, type: 2, result: img}
```