我正在Windows框架上的c#中制作视频转换器。 我想保存加载的文件,用户添加&如果它退出应用程序我想存储该文件,并再次运行应用程序时加载。 如何做到这一点。 ??给我想法如何做到这一点。保存程序状态并再次加载
回答
您可以创建一个设置类,其中包含先前加载,然后退出它序列化到磁盘并开始反序列化的文件列表。
你可以给它一点演示关于它的任何相关链接。 –
不要这样做。该框架为你做了这一切。 –
框架的问题是,有时如果更新应用程序,设置可能会丢失。但是,确定你可以先尝试内置的解决方案 –
使用设置API可以帮助: http://geekswithblogs.net/mbcrump/archive/2010/06/17/configuring-applicationuser-settings-in-wpf-the-easy-way.aspx
仅限于链接的答案通常是不建议的。请至少提供要做什么的摘要。 –
您需要使用用户设置。在Visual Studio中打开项目属性,然后单击“设置”选项卡。您可以通过输入设置名称,选择从下拉列表框的类型System.Collections.Specialized.StringCollection
,然后将其定义为用户范围设置添加一个新用户设置有System.Collections.Specialized.StringCollection
类型。
如果您忘记将其设置为用户设置并创建应用程序设置,它将是只读的,您将无法更改它。只有用户设置可以更改。
这会显得你的代码字符串一样的普通列表。您可以在添加新值等,并保存它是这样的:
当然你也可以遍历喜欢的条目:
foreach (string s in Properties.Settings.Default.[Setting name you chose])
....
的好处是,你不需要关心设置的存储位置和方式。 .NET为你做了这一切。
背景:创建设置会将它们添加到app.config
文件中。当您编译为[exename].exe.config
时,此文件将被复制到输出目录中。当应用程序启动时,框架将从那里读取应用程序设置。用户设置将从那里读取,或者(如果您更改并保存它们)从驻留在用户应用程序数据目录某处的副本中读取。
不要,我再说一遍:不尝试直接从您的代码修改.exe.config
文件,但始终使用如我上述自动为您生成的属性。
我发现一般的串的集合是不是帮助更多的麻烦,我不实现IEnumerable
是的,但是对于OP的目的来说它是完美的。他需要存储一个文件列表(我猜:文件名?)。可能他内部有一个文件列表,所以重新加载这些文件是一个简单的for循环。我怀疑能够使用LINQ胜过了分割包含所有文件名的字符串的痛苦......此外,尽管LINQ可能是一个很好的工具,但是我们在5年前才能编写它。你仍然可以写循环,你知道吗?但这是一个不同的讨论:-)至于臃肿的设置文件:谁在乎文件是1K还是2K甚至10K? –
- 1. 保存并加载菜单状态c#
- 2. 保存并加载UISwitch状态
- 3. Android保存并加载首先状态
- 4. 如何只加载一次碎片并保存其状态?
- 5. 如何加载一次我的片段,并保存其状态
- 6. NSUser默认保存按钮状态并再次显示
- 7. 保存布尔状态,以便当应用程序再次运行时,该状态已保存
- 8. 再次保存,清除并保存SharedPreferences
- 9. Jython保存程序状态
- 10. 将EMGUCV VectorOfKeyPoint保存为XML并再次加载
- 11. 如何在应用程序再次变为活动状态时加载视图
- 12. 保存表单并使用引导程序选项卡重新加载状态
- 13. 保存并加载C++程序
- 14. 保存和加载状态的tableview
- 15. 在UWP中加载和保存状态
- 16. Angularjs - 在调用子状态时再次阻止非抽象父状态加载
- 17. C#(再次,再次?)变量不保存
- 18. Love2d。国家系统不会再次加载游戏状态
- 19. 保存并加载CollapsiblePanelExtender通过回发控制状态
- 20. 保存并加载页面的ajax状态
- 21. 在TableView中保存并加载UISwitch状态
- 22. 保存UIButton状态并使用NSUserDefaults加载
- 23. 保存并加载Unity中的场景中的gameobjects的状态
- 24. 保存并加载GUI组件的状态
- 25. 保存并加载状态AS3 + Adobe Air
- 26. 保存的WebView的状态,并重新加载位置
- 27. 打开XML,修改并再次保存
- 28. 保存Android应用程序状态
- 29. android应用程序保存状态
- 30. 保存Java小程序的状态
[在程序重新启动之间保存状态]的可能重复(http://stackoverflow.com/questions/7522228/saving-state-between-program-restarts) – Sinatr