精华内容
下载资源
问答
  • win10 uwp 保存用户选择文件夹

    千次阅读 2016-10-09 09:28:04
    如果我们每次临时处理的文件保存,都要让用户选择一次,用户会不会觉得uwp垃圾?如果我们每次打开应用,都从某个文件读取,而这个文件不在应用目录和已知的目录,那么每次都需要用户选择,用户会不会觉得uwp垃圾?...

    如果我们每次把临时处理的文件保存,都要让用户选择一次,用户会不会觉得uwp垃圾?如果我们每次打开应用,都从某个文件读取,而这个文件不在应用目录和已知的目录,那么每次都需要用户选择,用户会不会觉得uwp垃圾?

    其实垃圾wr给了一个类,我们可以用这个类获得用户选择过的文件、文件夹。我们可以保存用户选择过的文件和文件夹。

    这个类在Windows.Storage.AccessCache,可以使用最近使用或一个比较大的存储,最近使用自有25个,我这里就不说。FutureAccessList可以存储1k个文件或文件夹,但垃圾wr给了我们这个东西,找不到他就给1k而不是无限。

    要使用这个类,其实我们就只用三个函数,其中我们需要知道,使用FutureAccessList拿出一个我们保存的文件或文件夹需要一个token。

    我们先从让用户选择选择文件夹,选择文件夹需要FolderPicker。

    不知道FolderPicker需要FileTypeFilter,这个设计。我们需要给他一个值,开头是”.”

    
                FolderPicker pick=new FolderPicker();
    
                pick.FileTypeFilter.Add(".png");
    

    然后让用户选择,这里是异步,我们可以让用户选择,然后我们做我们的。

    
                IAsyncOperation<StorageFolder> folderTask= pick.PickSingleFolderAsync();
    
                //做我们的
    
                StorageFolder folder = await folderTask;
    

    我们可以省一点,让用户选择我们不做什么

    
                var folder =await pick.PickSingleFolderAsync();
    

    判断用户选择,如果有选择folder !=null

    判断选择我们需要把它放进FutureAccessList,放进去可以拿到token

    
                if (folder != null)
    
                {
    
                    Folder = folder;
    
                    Address = folder.Path;
    
                    Token=StorageApplicationPermissions.FutureAccessList.Add(folder);
    
                }
    

    然后我们需要把token放到我们本地文件的位置。

    我放在account/account.json

    先拿到本地文件夹

    
                string folderStr = "account";
    
                StorageFolder folder = ApplicationData.Current.LocalFolder;
    

    创建一个文件夹account,因为如果是第一次我们就没有文件夹,如果不是我们就有

    
                try
    
                {
    
                    folder = await folder.GetFolderAsync(folderStr);
    
                }
    
                catch (FileNotFoundException)
    
                {
    
                    folder = await folder.CreateFolderAsync(folderStr);
    
                }
    

    创建文件

    
                StorageFile file = await folder.CreateFileAsync(
    
                    folderStr+".json", CreationCollisionOption.ReplaceExisting);
    

    因为我们就保存一次,一个好的做法是创建temp,然后做完所有再把原来的改名字为以前做的,然后把temp改名字为account.json,注意保存原先改名字的文件,并把原先改名字的之前的文件删除。

    如果我们在保存失败,那么我们的原先文件不会影响,如果我们保存文件在改名字出错了,可以通过原先恢复,这样才好。

    我们使用json保存,使用我们第三方。

    
      var json = JsonSerializer.Create();
    

    我们需要用StringBuilder来把json序列存放,如果直接用

    
                json.Serialize(new JsonTextWriter(
    
                    new StreamWriter(await file.OpenStreamForWriteAsync())), Account);
    

    就会出现下次使用UnauthorizedException,UWP UnauthorizedException 创建文件在LocalFolder一般就是我们使用json错误

    Account就是我们的数据。

    我写的方法应该可以是可以把token保存的

    
                StringBuilder str = new StringBuilder();
    
                StringWriter stream=new StringWriter(str);
    
                json.Serialize(new JsonTextWriter(
    
                   stream ), Account);
    
                using (StorageStreamTransaction transaction = await file.OpenTransactedWriteAsync())
    
                {
    
                    using (DataWriter dataWriter = new DataWriter(transaction.Stream))
    
                    {
    
                        dataWriter.WriteString(str.ToString());
    
                        transaction.Stream.Size = await dataWriter.StoreAsync();
    
                        await transaction.CommitAsync();
    
                    }
    
                }
    

    我们应用开始我们就可以读取

    读取就可以用json的

    
                        StorageFile file = await folder.GetFileAsync(folderStr + ".json");
    
                        var json = JsonSerializer.Create();
    
                        Account = json.Deserialize<Account>(new JsonTextReader(
    
                            new StreamReader(await file.OpenStreamForReadAsync())));
    
    
    

    folder要进去account

    我们从FutureAccessList拿文件

    
                 file = await StorageApplicationPermissions.FutureAccessList.GetFileAsync(Account.Token);
    

    知识共享许可协议
    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

    展开全文
  • 那是我平时收集的很有用的资料很多都可以重新下载,但怎能想起硬盘中的所有东西 今天换硬盘回来就像写一个保存指定路径下所有文件夹和文件名的程序这样,如果东西丢了,看看那里有些什么,也可聊以告慰 #...

    真是倒霉,刚买不久的移动硬盘,昨天删除一个分区失败后,几个分区都不见了,拿去修,未果

    换了个新的,但其中数据全没了。那是我平时收集的很有用的资料

    很多都可以重新下载,但怎能想起硬盘中的所有东西

     

    今天换硬盘回来

    就像写一个保存指定路径下所有文件夹和文件名的程序

    这样,如果东西丢了,看看那里有些什么,也可聊以告慰

     

    展开全文
  • 我们要做的是如何在js上将数据变成一个可以被浏览器下载的东西 第一步:使用Blob对象将你要保存在本地的数据转换成二进制数据 第二部:window.URL.createObjectURL方法,制造一个指向上面的二进制数据的url 第三...

    简而言之:

    实现的基础是浏览器本身的下载机制

    我们要做的是如何在js上将数据变成一个可以被浏览器下载的东西

    第一步:使用Blob对象将你要保存在本地的数据转换成二进制数据

    第二部:window.URL.createObjectURL方法,制造一个指向上面的二进制数据的url

    第三部:通过动态添加a标签来实现保存二进制数据的目的

    下面是一个例子:

            let data="abc";//要保存的数据
            //第一步
            let blob=new Blob([data],{type:"text/plain;charset=UTF-8"});
            //第二步
            let url=window.URL.createObjectURL(blob);
            
    //这里你会看到类似的地址:blob:http://localhost:8080/d2dbbe3f-7466-415b-a2d0-387cff290acb
            console.log(url);
             //动态创建a标签
            let link=document.createElement('a');
            link.style.display="none";
            link.href=url;
            link.setAttribute('download','model.txt');
            document.body.appendChild(link);
            link.click();
            document.body.removeChild(link);

     

    展开全文
  • basics:一开始建git仓库文件夹替换掉了,本地github上能看到文件,网页的上传不上去。于是代码复制保存了下来,丢失了iconfont和icomoon文件夹。但都是最基础的css ,js,jq能做的东西,存个档温故知新
  • WinCE文件夹保存问题

    2013-05-14 09:42:58
    三个系统文件夹:programfiles,windows,nandflash,只要nandflash文件夹是断电还能保存数据的? 鹏 9:37:54 ? Jangel 9:38:34 windows是 其它2个我试验一下 Jangel 9:40:21 我试验结果是 只有nandflash能...
     鹏  9:36:17
    三个系统文件夹:programfiles,windows,nandflash,只要nandflash文件夹是断电还能保存数据的?
    鹏  9:37:54

    Jangel  9:38:34
    windows是 其它2个我试验一下
    Jangel  9:40:21
    我试验结果是 只有nandflash能保存 好像可以设置的...
    鹏  9:41:13
    黄工说只有nandflash
    Jangel  9:46:14
    \WINCE700\platform\AM33X_BSP\FILES\platform.bib
    这个可以往nk里加东西 
     Jangel  10:04:14
    \WINCE700\platform\AM33X_BSP\FILES\platform.bib
    这个可以往nk windows文件夹里加东西

    \WINCE700\platform\AM33X_BSP\FILES\platform.dat
    建立文件夹,把windows的东西链接到别的地方

    示范:
    Root:-Directory("Tools")    在我的设备里建文件夹
    Directory("\Tools"):-File("Adc.lnk", "\windows\Adc.lnk")    链接文件

    鹏  14:47:53
    Root:-Directory("Tools")    在我的设备里建文件夹
    是可以创建文件夹,但是不是在NANDFLASH文件夹里创建,断电后数据还是会丢失的
    Jangel  15:36:17
    Root:-Directory("\NandFlash\TestInNF") 测试ok 他应该没加上nandflash路径 

    展开全文
  • 1.获取指定地址的输入流.URL url = new URL("url");InputStream in = url.openStream();2.在指定文件夹下创建文件。File dir = new File("指定文件夹");File file = new File(dir,
  • 最近有些用户反映保存图片之后在系统图库找不到保存的图片,遂决定彻底查看并解决下。 Adnroid中保存图片的方法可能有如下两种: 第一种是自己写方法,如下代码: public static File saveIm
  • /*________保存图片沙河路径文件夹_____________**littleSun_zheng**/   //先图片转成NSData   NSData *data = UIImageJPEGRepresentation(image, .000000005);     //文件管理器   NSFileManager *
  • 我们经常会通过“打开”或“另存为”对话框来定位打开和保存文件,当所要查找的文件不在一些常见的位置时,就需要逐个打开文件夹,逐个去查找,如果文件保存的目录很深,就是造成工作上的不便。如果我们能将常用的...
  • 这几天做个项目,需要以时间轴保存文件,以便以后进行历史查询时好查,本来这种应该拿数据库做的,但文件不大,而且每隔一段时间就删除了,所以就直接拿文件管理做的。很简单,但因为接触CVI没多长时间,按照以前...
  • 在java语言中,实现“将一个文件夹中的所有文件及子文件夹复制另一个文件夹内”看上去并不困难,但总会因为一些细节问题而不停地去排错。
  • 如何快速将多个文件夹下内容合并一个文件夹

    万次阅读 多人点赞 2019-01-10 10:56:53
    在需要合并的文件夹路径下新建一个文件夹和tt文件,命名看自己习惯 我命名了一个all的文件夹和c名称的文件 ...然后保存该文件,我的文件在E盘tt文件夹下,所以根据自己的请款去改代码。 重命名c.txt文件为c...
  • 找出文件夹(及其子文件夹)中的文件并复制目标文件夹中 1.问题引出 下载了整个2018年和2019年上半年的经济学人,不过是根据发刊日期建立了多个文件夹,我想复制出里面所有的*.epub格式的电子书,不可能一个一个的...
  • Unity3D - 如何引入包指定的文件夹

    千次阅读 2018-04-18 11:29:30
    Unity3D - 如何引入包指定的文件夹 我们经常需要导入Unity的包文件,但是Unity默认的导入时直接导入资源的根目录下边,这么做的方式 很不利于我们寻找新导入的插件或者资源,并且破坏了我们之前原有的文件结构...
  • 隐藏文件夹

    2008-03-27 12:15:05
    这个东西利用了微软的一个Bug,不知道算不算Bug还是他们给自己留的后门之类的东西,一键还原精灵就是利用这个保存自己的文件夹的,大家可以看一下。 “加密”后的文件夹打不开,删不掉,无法复制 <br>密码是...
  • ApplicationContext context = new ClassPathXmlApplicationContext("spring-bean....//路径数据传t.jsp检查是否能成功 ,注意还有一个东西要改才能运行 ,详情看后 model.addAttribute("url", pa); return "t"; }
  • 文件夹,并需要的文件都拷贝里面来。 2 ) New Copy File Phase -> 修改 Destination 为 Wrapper , SubPath 填 Contents/Dylib,->选择需要拷贝的 *.dylib 文件。 3 ) New Run ...
  • Tensorflow:TF模型文件(checkpoint文件夹下ckpt文件之data、index、meta)保存、模型导入、恢复并fine-tuning之详细攻略 目录 保存TF训练好的模型 1、Tensorflow模型文件之checkpoint文件夹下ckpt的data、...
  • python——将一个文件夹下各个子文件夹下的文件复制一个新的文件夹中 就是因为在B站客户端下载的视频都是一个视频一个文件夹,所以就找了一个办法,希望能帮你们。 这是在哔哩哔哩下载的视频,每个文件中只有一...
  • 很久未打开jupyter notebook, 今天要用它,发现打不开了。 win+R 打开命令行 输入cmd, 回车 输入jupyter ... 解决办法:原来放jupyter notebook的文件夹桌面上。 如果遇到相同的问题,期待可以顺利解决哟!
  • 本脚本也不限制从一台 Windows 10 上共享文件夹给另一台 Windows 10 上的 Docker 虚拟机中的Docker。 也可以是从一台 Windows 10 上共享文件夹给另一台 Mac OXS 上的 Docker 虚拟机中的Docker。 或者是从一台 ...
  • 1、打开Eclipse,window->Preferences->Server->Runtime Environments,在右侧添加相应的tomcat服务器 ... Location中的两项,注意观察Server path是否和实际的tomcat存在路径一致,确认后保存 3、配置
  • 我看到有些人的Windows文件夹保存数据而掉电也不消失,这是怎么做到的? 另外还附一个问题:我安装SQL CE3.0 的CAB包掉电就丢失了,要重装,怎么可以安装一次就可以了? ETDrawer 发表于 2009-5-26 13:44 ...
  • /// 将一个文件夹下的所有东西复制另一个文件夹 (可备份文件夹) /// </summary> /// <param name="sourceDire">源文件夹全名</param> /// <param name="destDire...
  • 昨天项目需要向指定的文件夹保存图片,需要使用文件管理器去选择指定的文件夹,当然最后由于逻辑太奇葩(不能选择文件夹,只能选择文件夹下的某一个文件)被否定了,改为自己读取手机存储的文件夹,并且可以创建。...
  • 在原系统的桌面上,我们肯定还有很多文件需要保存,然而进入PE系统后却找不原桌面文件夹了,这该怎么办呢?下面小编给大家分享各系统的桌面文件夹位置。1、Xp系统位置:打开我的电脑,依次找到:C:\Documents ...
  • Linux 学习之创建、删除文件和文件夹命令

    万次阅读 多人点赞 2017-09-05 18:26:38
    今天学习了几个命令,是创建、删除文件和文件夹的,在linux里,文件夹是目录,下面说下我学习的命令。 创建文件夹【mkdir】 一、mkdir命令使用权限 所有用户都可以在终端使用 mkdir 命令在拥有权限的文件夹...
  • 您可以通过将Mac上的Desktop and Documents文件夹同步iCloud来完成这两项任务。 我们知道云存储解决方案可能会造成混乱。因此,这里有一个完整的指南,介绍了如何将桌面和文档文件夹与iCloud同步时如何工作,以及...
  • 将下面这段Python代码文件复制需要整理文件名的文件夹下,然后运行下代码,最后在删除这段代码的文件名就可以了(将代码放文件下主要是不用输入文件夹目录路径,但代码的文件名也会被抓取)。 #...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 116,266
精华内容 46,506
关键字:

怎么把东西保存到文件夹