Ошибка "Входная строка имела неверный формат" - C# (185120)
Формулировка задачи:
Входная строка имела неверный формат,string count = nums.Count().ToString();Помогите пожалуйста найти ошибку.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Globalization;
namespace ConsoleApplication9
{
class Program
{
static void Main(string[] args)
{
string data = File.ReadAllText("1.txt");
List<char> NotDigits = new List<char>();
List<char> NotLetters = new List<char>();
for (int i = 0; i < data.Length; i++)
{
char c = data[i];
if (!Char.IsLetter(c) && !NotLetters.Contains(c)) NotLetters.Add(c);
if (!Char.IsDigit(c) && NotDigits.Contains(c)) NotDigits.Add(c);
}
var nums = data.Split(NotDigits.ToArray(),
StringSplitOptions.RemoveEmptyEntries)
.Select(int.Parse);
string count = nums.Count().ToString();
File.WriteAllText("test.txt", count);
int max = nums.Max();
int min = nums.Min();
Console.WriteLine("MAX = {0}, MIN = {1}", max, min);
string[] words = data.Split(NotLetters.ToArray(),
StringSplitOptions.RemoveEmptyEntries);
foreach (var s in words)
Console.WriteLine(s);
Console.Read();
}
}
}Решение задачи: «Ошибка "Входная строка имела неверный формат"»
textual
Листинг программы
StreamReader sr = new StreamReader("numbers.txt");
string text = sr.ReadToEnd();
sr.Close();
string[] mas1 = text.Split(new char[] { ' ', ',', '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries);
int count = mas1.Count(); // Количество чисел в файле
int[] mas = new int[mas1.Count()];
for (int t = 0; t < mas1.Count(); t++)
{
mas[t] = Convert.ToInt32(mas1[t]);
}
int max = mas[0];
for (int q = 1; q < mas.Count(); q++)
{
if (mas[q] > max)
{
max = mas[q]; // В итоге в переменной max будет максимальное число
}
}
Console.WriteLine("Maximum: " + max);
int min = mas[0];
for (int w = 1; w < mas.Count(); w++)
{
if (mas[w] < min)
{
min = mas[w]; // Тут минимальное
}
}
Console.WriteLine("Minimum: " + min);
Console.ReadLine();