2014-08-29 3 views
-1

Итак, у меня есть текстовый файл «product» с именем, номером категории, ценой, запасом, уровнем повторного заказа. Мне нужна программа для чтения ввода как номера категории, и если запас какой-либо позиции в этой категории ниже уровня повторного заказа, то выведите этот элемент. Например, если я буду вводить «3», тогда будут выводиться все элементы с меньшим запасом, чем уровень повторного заказа в категории 3. Это мой текущий кодЧтение ввода как значения в текстовом файле

class Program 
{ 
    static void Main(string[] args) 
    { 
     List<Product> product = LoadData(); 
     string input = Console.ReadLine(); 
     while (input != "#") 
     { 
      stuff(input, product); 
      input = Console.ReadLine(); 
     } 
    } 

    private static void stuff(string input, List<Product> product) 
    { 
     int cat = int.Parse(input); 
     foreach (var item in product) 
     { 
      cat = item.Category; 
      if (item.Stock < item.Reorder) 
       Console.WriteLine(item); 
     } 

    } 

    private static List<Product> LoadData() 
    { 
     StreamReader reader = new StreamReader("C:/data/products.txt"); 
     List<Product> list = new List<Product>(); 
     while (reader.EndOfStream) 
     { 
      string line = reader.ReadLine(); 
      string[] br = line.Split(','); 
      int category = int.Parse(br[1]); 
      double price = double.Parse(br[2]); 
      int stock = int.Parse(br[3]); 
      int reorder = int.Parse(br[4]); 
      Product products = new Product(br[0], category, price, stock, reorder); 
      list.Add(products); 
     } 
     reader.Close(); 
     return list; 
    } 
} 

Дело здесь в том, что выход ничего, когда я ввода. Так что, интересно, что-то не так с этим кодом?

+2

чем проблема? – drneel

+0

Вы не задавали никаких вопросов здесь. Также, что вам нужно, нужно также предоставить формат текстового файла и реализацию класса продукта. – Seminda

+0

Не следует ли строка 'if (item.Stock Mephy

ответ

0

Это должно быть изменено:

while (reader.EndOfStream) 

к этому:

while (!reader.EndOfStream) 
Смежные вопросы