Вы можете попробовать это:
Collection = new ObservableCollection(Collection.OrderBy(x=>x.Date).ToList());
Или адаптировать этот метод:
public static void Sort<T>(this ObservableCollection<T> collection, Comparison<T> comparison)
{
var sortableList = new List<T>(collection);
sortableList.Sort(comparison);
for (int i = 0; i < sortableList.Count; i++)
{
collection.Move(collection.IndexOf(sortableList[i]), i);
}
}
Да, используйте для этого gzip. Лучший способ - прочитать данные как входные данные и перенаправить сжатый файл в выходной файл, т. Е.
cat test.csv | gzip > test.csv.gz
cat test.csv
отправит данные как stdout, а с помощью pipe-sign gzip прочитает эти данные как stdin. Убедитесь, что перенаправили вывод gzip в какой-то файл, поскольку сжатые данные не будут записываться в терминал.
gzip > stdin.gz
возможно? В противном случае вам нужно конкретизировать свой вопрос.
Да, gzip
позволит вам это сделать. Если вы просто запустите gzip> foo.gz
, он сожмет STDIN в файл foo.gz. Вы также можете передать в него данные, например some_command | gzip> foo.gz
.