2015-10-09 6 views
0

мне нужно сделать табуляцией текстовый файл из таблицы:FileHelpers разделителями табуляции Два Headers

https://s3.amazonaws.com/seller-templates/ff/na/us/Flat.File.Listingloader.xls

Вы увидите, что есть два заголовка:

enter image description here

Я используя библиотеку C# FileHelper. Я решил создать заголовки вручную:

      var engine = new FileHelperEngine<FlatFileListingsData>(); 

      var orders = new List<FlatFileListingsData>(); 
      orders.Add(new FlatFileListingsData() { ConditionType = "New", ConditionNote = "New", Price = 9, ProductId = "B009Q76ODU", ProductIdType = "ASIN", Quantity = 1, Sku = "Test1" }); 

      string rowHeaders = "sku" + "\t" + "price" + "\t" + "quantity" + "\t" + "product-id" + "\t" + "product-id-type" + "\t" + "condition-type" + "\t" + "condition-note" + "\t" + "ASIN-hint" + "\t" + "title" + "\t" + "product-tax-code" + "\t" + "operation-type" + "\t" + "sale-price" + "\t" + "sale-start-date" + "\t" + "sale-end-date" + "\t" + "leadtime-to-ship" + "\t" + "launch-date" + "\t" + "is-giftwrap-available" + "\t" + "is-gift-message-available" + "\t" + "fulfillment-center-id" + "\t" + "main-offer-image" + "\t" + "offer-image1" + "\t" + "offer-image2" + "\t" + "offer-image3" + "\t" + "offer-image4" + "\t" + "offer-image5"; 

      engine.HeaderText = "TemplateType=Offer" + "\t" + "Version=2014.0703" + Environment.NewLine + rowHeaders + Environment.NewLine + rowHeaders; 
      engine.WriteFile("output2.txt", orders); 



[DelimitedRecord("\t")] 
public class FlatFileListingsData 
{ 
    public string Sku { get; set; } 
    public decimal Price { get; set; } 
    public int Quantity { get; set; } 
    public string ProductId { get; set; } 
    public string ProductIdType { get; set; } 
    public string ConditionType { get; set; } 
    public string ConditionNote { get; set; } 
} 

Является ли это точным представлением файла xls, который я показал? Интересно, что я пытаюсь загрузить этот текстовый файл в Amazon. Я получаю сообщение об ошибке в строке TemplateType = Offer:

Недопустимая или недопустимая строка заголовка файла. Строка заголовка предназначена только для использования Amazon и не может быть изменена или удалена. Чтобы исправить эту ошибку, загрузите шаблон снова из справки продавца и используйте эту новую копию или вставьте правильную строку заголовка непосредственно над заголовками столбцов в существующем файле.

+1

посмотрите здесь Я думаю, вы найдете это намного проще http://stackoverflow.com/questions/11965984/convert-xls-to-txt-tsv-file – MethodMan

ответ

0

Я считаю, что с помощью FileHelpers вы можете установить текст заголовка, который вы хотите, чтобы он мог включать несколько строк по вашему выбору, вставляя их. Вы даже можете использовать события BeforeWrite и AfterWrite (но не путайте AfterWrite на самом деле после обработки, но перед записью в поток).

 Смежные вопросы

  • Нет связанных вопросов^_^