所以这可能会引起很多仇恨,因为这是一个真正的新手错误,但我有一个任务,我有一个图书馆列表,其中包含他们的ISBN号,作者等等。我是无法使用其信息返回每本书的值。我需要程序使用我输入的信息创建两个csv文件并写入我在Console.WriteLine中编写的文本。因为我刚刚开始编程,所以你可能会遇到很多错误。这是代码:
using System;
using System.IO;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
foreach (string line in File.ReadAllLines(@"Duomenys.txt"))
{
string[] a = line.Split(',');
long ISBN = Convert.ToInt64(a[0]);
string BookName = a[1];
string Author = a[2];
string Genre = a[3];
string Publisher = a[4];
int PublishYear = Convert.ToInt32(a[5]);
int PageNumber = Convert.ToInt32(a[6]);
Console.WriteLine(PublishYear);
Console.WriteLine();
}
}
public void BookWithTheMostPages(int[] a)
{
int maxPages = 0;
string[] lines = File.ReadAllText(@"Duomenys.txt").Split('\n');
foreach (string line in lines)
{
{
Console.ReadLine();
if (a[6] > maxPages)
{
maxPages = a[6];
Console.WriteLine("Storiausios knygos pavadinimas: {0} , jos autorius(-ė): {1}", a[1], a[2]);
}
}
}
}
public void Publish(string[] a)
{
if (!File.Exists(@"Technologija.csv"))
File.Create(@"Technologija.csv").Dispose();
using (StreamWriter streamwrite = new StreamWriter(File.OpenWrite(@"Technologija.csv")))
{
if (a[2] == "Technologija")
{
streamwrite.WriteLine("\n ISBN : {0}, Pavadinimas: {1}, Autorius: {2}, Tipas: {3}, Leidykla: {4}, Išleidimo Metai: {5}, Puslapių skaičius: {6}", a[0], a[1], a[2], a[3], a[4], a[5], a[6]);
}
}
}
public void Output(string[] a)
{
if (!File.Exists(@"Autoriai.csv"))
File.Create(@"Autoriai.csv").Dispose();
using (StreamWriter streamWriter = new StreamWriter(File.OpenWrite(@"Autoriai.csv")))
{
streamWriter.WriteLine("\n{0}", a[2]);
}
}
public void Publishyear(string[] a)
{
if (a[5] == "2014")
{
for (int j = 1; j <= 5; j++)
Console.WriteLine("\nKnygos ISBN: {0}, Pavadinimas {1}, Autorius {2}", a[0], a[1], a[2]);
}
}
}
}
答案 0 :(得分:1)
首先欢迎编程!关于c#的一个好处是它的面向对象,你应该利用这个!创建一个书类来保存您的数据并操作它将更容易。此外,如果您尝试返回数据,则void关键字表示您编写的函数没有返回值,因此您将无法获得任何返回值。这是一个让你入门的例子。
class Program
{
static void Main(string[] args)
{
List<Book> books = new List<Book>;
foreach (string line in File.ReadAllLines(@"Duomenys.txt"))
{
Book newBook = new Book();
string[] a = line.Split(',');
newBook.ISBN = a[0];
newBook.bookName = a[1];
newBook.author = a[2];
newBook.genre = a[3];
newBook.publisher = a[4];
newBook.yearPublished = Convert.ToDateTime(a[5]);
newBook.numberOfPages = Convert.ToInt32(a[6]);
books.Add(newBook);
}
foreach (Book book in books)
{
// do stuff here!
}
}
class Book
{
public string ISBN { get; set; }
public string bookName { get; set; }
public string author { get; set; }
public string genre { get; set; }
public string publisher { get; set; }
public DateTime yearPublished { get; set; }
public int numberOfPages { get; set; }
}