| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- (function() {
- var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
- var __module = nodeEnv ? module : {exports:{}};
- var __filename = 'preview-scripts/assets/script/mk/utils/FileUtil.js';
- var __require = nodeEnv ? function (request) {
- return cc.require(request);
- } : function (request) {
- return __quick_compile_project__.require(request, __filename);
- };
- function __define (exports, require, module) {
- if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
- cc._RF.push(module, '169f6jrZC1DK61LjHa0l1kK', 'FileUtil');
- // script/mk/utils/FileUtil.ts
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- /**
- * 文件操作工具类
- * @author 薛鸿潇
- */
- var FileUtil = /** @class */ (function () {
- function FileUtil() {
- }
- /**
- * 打开文件选择器
- * @param {string} accept
- * @param {(file: File) => void} callback
- * @memberof FileUtil
- */
- FileUtil.prototype.openLocalFile = function (accept, callback) {
- var inputEl = document.getElementById('file_input');
- if (!inputEl) {
- inputEl = document.createElement('input');
- inputEl.id = 'file_input';
- inputEl.setAttribute('id', 'file_input');
- inputEl.setAttribute('type', 'file');
- inputEl.setAttribute('class', 'fileToUpload');
- inputEl.style.opacity = '0';
- inputEl.style.position = 'absolute';
- inputEl.setAttribute('left', '-999px');
- document.body.appendChild(inputEl);
- }
- accept = accept || ".*";
- inputEl.setAttribute('accept', accept);
- inputEl.onchange = function (event) {
- var files = inputEl.files;
- if (files && files.length > 0) {
- var file = files[0];
- if (callback)
- callback(file);
- }
- };
- inputEl.click();
- };
- /**
- * 读取本地文件数据
- * @param {File} file
- * @param {READ_FILE_TYPE} readType
- * @param {((result: string | ArrayBuffer) => void)} callback
- * @memberof FileUtil
- */
- FileUtil.prototype.readLocalFile = function (file, readType, callback) {
- var reader = new FileReader();
- reader.onload = function (event) {
- if (callback) {
- if (reader.readyState == FileReader.DONE) {
- callback(reader.result);
- }
- else {
- callback(null);
- }
- }
- };
- switch (readType) {
- case READ_FILE_TYPE.DATA_URL:
- reader.readAsDataURL(file);
- break;
- case READ_FILE_TYPE.TEXT:
- reader.readAsText(file); // 作为字符串读出
- break;
- case READ_FILE_TYPE.BINARY:
- reader.readAsBinaryString(file);
- break;
- case READ_FILE_TYPE.ARRAYBUFFER:
- reader.readAsArrayBuffer(file);
- break;
- }
- };
- /**
- * 保存数据到本地
- * @param {*} fileNameToSaveAs 要保存的文件名
- * @param {*} textToWrite 要保存的文件内容
- * @memberof FileUtil
- */
- FileUtil.prototype.saveForBrowser = function (fileNameToSaveAs, textToWrite) {
- if (cc.sys.isBrowser) {
- console.log("浏览器");
- var textFileAsBlob = new Blob([textToWrite], { type: 'application/json' });
- var downloadLink = document.createElement("a");
- downloadLink.download = fileNameToSaveAs;
- downloadLink.innerHTML = "Download File";
- if (window.webkitURL != null) {
- // Chrome allows the link to be clicked
- // without actually adding it to the DOM.
- downloadLink.href = window.webkitURL.createObjectURL(textFileAsBlob);
- }
- else {
- // Firefox requires the link to be added to the DOM
- // before it can be clicked.
- downloadLink.href = window.URL.createObjectURL(textFileAsBlob);
- // downloadLink.onclick = destroyClickedElement;
- downloadLink.style.display = "none";
- document.body.appendChild(downloadLink);
- }
- downloadLink.click();
- }
- };
- return FileUtil;
- }());
- exports.default = FileUtil;
- /**
- * 读取文件方式
- */
- var READ_FILE_TYPE;
- (function (READ_FILE_TYPE) {
- READ_FILE_TYPE[READ_FILE_TYPE["DATA_URL"] = 0] = "DATA_URL";
- READ_FILE_TYPE[READ_FILE_TYPE["TEXT"] = 1] = "TEXT";
- READ_FILE_TYPE[READ_FILE_TYPE["BINARY"] = 2] = "BINARY";
- READ_FILE_TYPE[READ_FILE_TYPE["ARRAYBUFFER"] = 3] = "ARRAYBUFFER";
- })(READ_FILE_TYPE || (READ_FILE_TYPE = {}));
- cc._RF.pop();
- }
- if (nodeEnv) {
- __define(__module.exports, __require, __module);
- }
- else {
- __quick_compile_project__.registerModuleFunc(__filename, function () {
- __define(__module.exports, __require, __module);
- });
- }
- })();
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcc2NyaXB0XFxta1xcdXRpbHNcXEZpbGVVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0E7OztHQUdHO0FBQ0g7SUFBQTtJQW1HQSxDQUFDO0lBakdHOzs7OztPQUtHO0lBQ0ksZ0NBQWEsR0FBcEIsVUFBcUIsTUFBYyxFQUFFLFFBQThCO1FBQy9ELElBQUksT0FBTyxHQUF1QyxRQUFRLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3hGLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMxQyxPQUFPLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQztZQUMxQixPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztZQUN6QyxPQUFPLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNyQyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztZQUM5QyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7WUFDNUIsT0FBTyxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1lBQ3BDLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ3ZDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3RDO1FBRUQsTUFBTSxHQUFHLE1BQU0sSUFBSSxJQUFJLENBQUM7UUFDeEIsT0FBTyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFdkMsT0FBTyxDQUFDLFFBQVEsR0FBRyxVQUFDLEtBQUs7WUFDckIsSUFBSSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQTtZQUN6QixJQUFJLEtBQUssSUFBSSxL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QUMsRUFMSSxjQUFjLEtBQWQsY0FBYyxRQUtsQiIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4vKipcclxuICog5paH5Lu25pON5L2c5bel5YW357G7XHJcbiAqIEBhdXRob3Ig6Jab6bi/5r2HXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBGaWxlVXRpbCB7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDmiZPlvIDmlofku7bpgInmi6nlmahcclxuICAgICAqIEBwYXJhbSB7c3RyaW5nfSBhY2NlcHRcclxuICAgICAqIEBwYXJhbSB7KGZpbGU6IEZpbGUpID0+IHZvaWR9IGNhbGxiYWNrXHJcbiAgICAgKiBAbWVtYmVyb2YgRmlsZVV0aWxcclxuICAgICAqL1xyXG4gICAgcHVibGljIG9wZW5Mb2NhbEZpbGUoYWNjZXB0OiBzdHJpbmcsIGNhbGxiYWNrOiAoZmlsZTogRmlsZSkgPT4gdm9pZCkge1xyXG4gICAgICAgIGxldCBpbnB1dEVsOiBIVE1MSW5wdXRFbGVtZW50ID0gPEhUTUxJbnB1dEVsZW1lbnQ+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbGVfaW5wdXQnKTtcclxuICAgICAgICBpZiAoIWlucHV0RWwpIHtcclxuICAgICAgICAgICAgaW5wdXRFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lucHV0Jyk7XHJcbiAgICAgICAgICAgIGlucHV0RWwuaWQgPSAnZmlsZV9pbnB1dCc7XHJcbiAgICAgICAgICAgIGlucHV0RWwuc2V0QXR0cmlidXRlKCdpZCcsICdmaWxlX2lucHV0Jyk7XHJcbiAgICAgICAgICAgIGlucHV0RWwuc2V0QXR0cmlidXRlKCd0eXBlJywgJ2ZpbGUnKTtcclxuICAgICAgICAgICAgaW5wdXRFbC5zZXRBdHRyaWJ1dGUoJ2NsYXNzJywgJ2ZpbGVUb1VwbG9hZCcpO1xyXG4gICAgICAgICAgICBpbnB1dEVsLnN0eWxlLm9wYWNpdHkgPSAnMCc7XHJcbiAgICAgICAgICAgIGlucHV0RWwuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xyXG4gICAgICAgICAgICBpbnB1dEVsLnNldEF0dHJpYnV0ZSgnbGVmdCcsICctOTk5cHgnKTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbnB1dEVsKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGFjY2VwdCA9IGFjY2VwdCB8fCBcIi4qXCI7XHJcbiAgICAgICAgaW5wdXRFbC5zZXRBdHRyaWJ1dGUoJ2FjY2VwdCcsIGFjY2VwdCk7XHJcblxyXG4gICAgICAgIGlucHV0RWwub25jaGFuZ2UgPSAoZXZlbnQpID0+IHtcclxuICAgICAgICAgICAgbGV0IGZpbGVzID0gaW5wdXRFbC5maWxlc1xyXG4gICAgICAgICAgICBpZiAoZmlsZXMgJiYgZmlsZXMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgdmFyIGZpbGUgPSBmaWxlc1swXTtcclxuICAgICAgICAgICAgICAgIGlmIChjYWxsYmFjaykgY2FsbGJhY2soZmlsZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaW5wdXRFbC5jbGljaygpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICog6K+75Y+W5pys5Zyw5paH5Lu25pWw5o2uXHJcbiAgICAgKiBAcGFyYW0ge0ZpbGV9IGZpbGVcclxuICAgICAqIEBwYXJhbSB7UkVBRF9GSUxFX1RZUEV9IHJlYWRUeXBlXHJcbiAgICAgKiBAcGFyYW0geygocmVzdWx0OiBzdHJpbmcgfCBBcnJheUJ1ZmZlcikgPT4gdm9pZCl9IGNhbGxiYWNrXHJcbiAgICAgKiBAbWVtYmVyb2YgRmlsZVV0aWxcclxuICAgICAqL1xyXG4gICAgcHVibGljIHJlYWRMb2NhbEZpbGUoZmlsZTogRmlsZSwgcmVhZFR5cGU6IFJFQURfRklMRV9UWVBFLCBjYWxsYmFjazogKHJlc3VsdDogc3RyaW5nIHwgQXJyYXlCdWZmZXIpID0+IHZvaWQpIHtcclxuICAgICAgICB2YXIgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICByZWFkZXIub25sb2FkID0gZnVuY3Rpb24gKGV2ZW50KSB7XHJcbiAgICAgICAgICAgIGlmIChjYWxsYmFjaykge1xyXG4gICAgICAgICAgICAgICAgaWYgKHJlYWRlci5yZWFkeVN0YXRlID09IEZpbGVSZWFkZXIuRE9ORSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNhbGxiYWNrKHJlYWRlci5yZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBjYWxsYmFjayhudWxsKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH07XHJcbiAgICAgICAgc3dpdGNoIChyZWFkVHlwZSkge1xyXG4gICAgICAgICAgICBjYXNlIFJFQURfRklMRV9UWVBFLkRBVEFfVVJMOlxyXG4gICAgICAgICAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBSRUFEX0ZJTEVfVFlQRS5URVhUOlxyXG4gICAgICAgICAgICAgICAgcmVhZGVyLnJlYWRBc1RleHQoZmlsZSk7Ly8g5L2c5Li65a2X56ym5Liy6K+75Ye6XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBSRUFEX0ZJTEVfVFlQRS5CSU5BUlk6XHJcbiAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzQmluYXJ5U3RyaW5nKGZpbGUpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgUkVBRF9GSUxFX1RZUEUuQVJSQVlCVUZGRVI6XHJcbiAgICAgICAgICAgICAgICByZWFkZXIucmVhZEFzQXJyYXlCdWZmZXIoZmlsZSk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiDkv53lrZjmlbDmja7liLDmnKzlnLBcclxuICAgICAqIEBwYXJhbSB7Kn0gZmlsZU5hbWVUb1NhdmVBcyDopoHkv53lrZjnmoTmlofku7blkI1cclxuICAgICAqIEBwYXJhbSB7Kn0gdGV4dFRvV3JpdGUg6KaB5L+d5a2Y55qE5paH5Lu25YaF5a65XHJcbiAgICAgKiBAbWVtYmVyb2YgRmlsZVV0aWxcclxuICAgICAqL1xyXG4gICAgcHVibGljIHNhdmVGb3JCcm93c2VyKGZpbGVOYW1lVG9TYXZlQXM6IGFueSwgdGV4dFRvV3JpdGU6IGFueSkge1xyXG4gICAgICAgIGlmIChjYy5zeXMuaXNCcm93c2VyKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKFwi5rWP6KeI5ZmoXCIpO1xyXG4gICAgICAgICAgICBsZXQgdGV4dEZpbGVBc0Jsb2IgPSBuZXcgQmxvYihbdGV4dFRvV3JpdGVdLCB7IHR5cGU6ICdhcHBsaWNhdGlvbi9qc29uJyB9KTtcclxuICAgICAgICAgICAgbGV0IGRvd25sb2FkTGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJhXCIpO1xyXG4gICAgICAgICAgICBkb3dubG9hZExpbmsuZG93bmxvYWQgPSBmaWxlTmFtZVRvU2F2ZUFzO1xyXG4gICAgICAgICAgICBkb3dubG9hZExpbmsuaW5uZXJIVE1MID0gXCJEb3dubG9hZCBGaWxlXCI7XHJcbiAgICAgICAgICAgIGlmICh3aW5kb3cud2Via2l0VVJMICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICAgIC8vIENocm9tZSBhbGxvd3MgdGhlIGxpbmsgdG8gYmUgY2xpY2tlZCAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLy8gd2l0aG91dCBhY3R1YWxseSBhZGRpbmcgaXQgdG8gdGhlIERPTS4gICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIGRvd25sb2FkTGluay5ocmVmID0gd2luZG93LndlYmtpdFVSTC5jcmVhdGVPYmplY3RVUkwodGV4dEZpbGVBc0Jsb2IpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgLy8gRmlyZWZveCByZXF1aXJlcyB0aGUgbGluayB0byBiZSBhZGRlZCB0byB0aGUgRE9NICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAvLyBiZWZvcmUgaXQgY2FuIGJlIGNsaWNrZWQuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBkb3dubG9hZExpbmsuaHJlZiA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKHRleHRGaWxlQXNCbG9iKTtcclxuICAgICAgICAgICAgICAgIC8vIGRvd25sb2FkTGluay5vbmNsaWNrID0gZGVzdHJveUNsaWNrZWRFbGVtZW50OyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgZG93bmxvYWRMaW5rLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIjtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZG93bmxvYWRMaW5rKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgZG93bmxvYWRMaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG4vKipcclxuICog6K+75Y+W5paH5Lu25pa55byPXHJcbiAqL1xyXG5lbnVtIFJFQURfRklMRV9UWVBFIHtcclxuICAgIERBVEFfVVJMLC8vIHJlYWRBc0RhdGFVUkwsIGJhc2U2NFxyXG4gICAgVEVYVCwvLyByZWFkQXNUZXh0XHJcbiAgICBCSU5BUlksLy8gcmVhZEFzQmluYXJ5U3RyaW5nXHJcbiAgICBBUlJBWUJVRkZFUiwvLyByZWFkQXNBcnJheUJ1ZmZlclxyXG59Il19
|