如何重写此代码,将字符串列表分配给字符串对象的集合?
Posted
技术标签:
【中文标题】如何重写此代码,将字符串列表分配给字符串对象的集合?【英文标题】:How can I rewrite this code assigning a List of String to a Collection of an Object of String? 【发布时间】:2020-12-26 06:04:51 【问题描述】:如何重写此代码以将数组列表的元素一次分配给对象的元素?
List<string> fileEntries = new List<string>
(Directory.EnumerateFileSystemEntries("/storage/emulated/0/Download"));
FileLogs = new ObservableCollection<FileLog> ;
foreach (string fileName in fileEntries)
FileLogs.Add(new FileLog File = fileName );
【问题讨论】:
【参考方案1】:你的意思是这样的吗?:
FileLogs = new ObservableCollection<FileLog>(
Directory.EnumerateFileSystemEntries("/storage/emulated/0/Download")
.Select(fileName => new FileLog File = fileName )
);
它使用在单个语句中接受IEnumerable<FileLog>
的构造函数创建一个ObservableCollection<FileLog>
。
它使用 LINQ Select
方法将从Directory.EnumerateFileSystemEntries
返回的IENumerable<string
转换为IEnumerable<FileLog>
。
【讨论】:
让我在我的程序中尝试一下。 FileSystemEntries 中有多个文件。我只是不知道如何从文件列表中分配给我的对象列表。 @zawhtut:就像我向你展示的那样。此代码将从Directory.EnumerateFileSystemEntries
返回的每个字符串添加一个FileLog
到ObservableCollection<FileLog>
。
所以。有没有不使用 LINQ 的方法?基本上它不能将 `IEnumerableIEnumerable<string>
。这就是 LINQ 方法为您所做的。以上是关于如何重写此代码,将字符串列表分配给字符串对象的集合?的主要内容,如果未能解决你的问题,请参考以下文章
如何测试字符串包含列表中的元素并通过 Pandas 将目标元素分配给另一列