我有一个制表符分隔的文本文件,其中包含 19 列和大约 45000 行。我将此数据导入 sql server 2005 并导出为 csv 文件。在这个表中有一个名为“icon_url”的列,它由许多大小为 100x100px 的 jpeg 链接组成。我需要做的是,我需要将这些数据作为网格视图获取,如下所示。快速加载此数据的最佳方法是什么?csv 格式适合加载数据吗?请详细写。
问问题
210 次
1 回答
2
不,csv 不是一种“好”的格式。不过,这是一种简单的格式。
如果您只想存储几个不会更改的图像 URI,您可以将其存储在一个 txt 文件中(每个 uri 一行)......这个解决方案更简单(并且非常相当于一个 csv 文件,但是“更安全”:没有人会犯错误,例如创建新列或 excel 可能发生的其他事情)。
...或者您想要一些更易于维护的东西,您可以使用嵌入式数据库(如果您希望数据保留在手机上)。你可能会在谷歌上找到一些关于它的教程,比如这个
或者您可以使用XmlSerializer 类加载序列化数据
要回答您的问题,(丑陋的)代码应该可以解决问题(未经测试):
Xaml
<ItemsControl x:Name="items">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="4"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Image Height="{Binding ActualWidth,RelativeSource={RelativeSource Self}}" Source="{Binding}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</ItemsControl>
CS
items.ItemsSource = File.ReadAllLines("yourCsvFile.csv").Select(s=>s.Trim(';')).Skip(1); // skip the header...
于 2013-11-11T13:30:04.250 回答