Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法创建";“文本中的表格”;使用C#文件,但工作代码在控制台中正常工作_C#_String_Formatting_Text Files - Fatal编程技术网

无法创建";“文本中的表格”;使用C#文件,但工作代码在控制台中正常工作

无法创建";“文本中的表格”;使用C#文件,但工作代码在控制台中正常工作,c#,string,formatting,text-files,C#,String,Formatting,Text Files,我试图在文本文件中存储一些表格格式的数据。 我找到了一些创建表控制台的代码 我能够在控制台上生成表格格式的数据, 但我不知道为什么它不适用于文本文件 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace part1johnskeet { class Program {

我试图在文本文件中存储一些表格格式的数据。 我找到了一些创建表控制台的代码 我能够在控制台上生成表格格式的数据, 但我不知道为什么它不适用于文本文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace part1johnskeet
{
class Program
{
    static void Main(string[] args)
    {


        FileStream fs = new FileStream(@"D:\tabletxt.txt", FileMode.Create);
        StreamWriter sw = new StreamWriter(fs, UTF8Encoding.UTF8);


        Console.WriteLine("writing File");

        sw.WriteLine("");
        sw.WriteLine("----------------------------");


        Console.WriteLine("-------------------------------");
        Console.WriteLine("First Name | Last Name  |   Age");
        Console.WriteLine("-------------------------------");
        Console.WriteLine(String.Format("{0,-10} | {1,-10} | {2,5}", "Bill", "Gates", 51));
        Console.WriteLine(String.Format("{0,-10} | {1,-10} | {2,5}", "Edna", "Parker", 114));
        Console.WriteLine(String.Format("{0,-10} | {1,-10} | {2,5}", "Johnny", "Depp", 44));
        Console.WriteLine("-------------------------------");










        sw.WriteLine("-------------------------------");

        sw.WriteLine("Name".PadRight(13, ' ') + "Unit".PadLeft(10, ' ') + "Rate".PadLeft(6, ' ') + "Total".PadRight(8, ' ') + "");
        sw.WriteLine("fas".PadRight(13, ' ') + "10".PadLeft(10, ' ') + "710".PadLeft(6, ' ') + "22.55".PadRight(8, ' ') + "");
        sw.WriteLine("asd 1".PadRight(13, ' ') + "10.25".PadLeft(10, ' ') + "20.25".PadLeft(6, ' ') + "800.55".PadRight(8, ' ') + "");
        sw.WriteLine("asd".PadRight(13, ' ') + "13.5".PadLeft(10, ' ') + "35".PadLeft(6, ' ') + "600.25".PadRight(8, ' ') + "");
        sw.WriteLine(" adas".PadRight(13, ' ') + "14.3".PadLeft(10, ' ') + "10".PadLeft(6, ' ') + "143".PadRight(8, ' ') + "");
        sw.WriteLine("asdas".PadRight(13, ' ') + "10".PadLeft(10, ' ') + "22.5".PadLeft(6, ' ') + "220.5".PadRight(8, ' ') + "");
        sw.WriteLine("asdas".PadRight(13, ' ') + "700".PadLeft(10, ' ') + "16.5".PadLeft(6, ' ') + "800.15".PadRight(8, ' ') + "");
        sw.WriteLine("sdfefsdfe34rs".PadRight(13, ' ') + "800".PadLeft(10, ' ') + "10".PadLeft(6, ' ') + "8000".PadRight(8, ' ') + "");

        sw.WriteLine(String.Format("{0,-10} | {1,-10} | {2,5}", "Edna", "Parker", 114));
        sw.WriteLine(String.Format("{0,-10} | {1,-10} | {2,5}", "Johnny", "Depp", 44));






        string string1 = "asdf";
        string string2 = "ffs";
        string string4 = "gahah";
        string string5 = "kjshdfkjh";
        string string6 = "fg";
        string string7 = "kkkdd";
        string string8 = "asdasdf";
        string string9 = "somelongtext";

        sw.WriteLine(String.Format("string1: {0,-10} string2: {1,-10}", string1 + ",", string2));
        sw.WriteLine(String.Format("string4: {0,-10} string5: {1,-10}", string4 + ",", string5));
        sw.WriteLine(String.Format("string6: {0,-10} string7: {1,-10}", string6 + ",", string7));
        sw.WriteLine(String.Format("string8: {0,-10} string9: {1,-10}", string8 + ",", string9));





        Console.WriteLine(String.Format("string1: {0,-10} string2: {1,-10}", string1 + ",", string2));
        Console.WriteLine(String.Format("string4: {0,-10} string5: {1,-10}", string4 + ",", string5));
        Console.WriteLine(String.Format("string6: {0,-10} string7: {1,-10}", string6 + ",", string7));
        Console.WriteLine(String.Format("string8: {0,-10} string9: {1,-10}", string8 + ",", string9));





        // Create array of 5-tuples with population data for three U.S. cities, 1940-1950.
        Tuple<string, DateTime, int, DateTime, int>[] cities = 
      { 
          Tuple.Create("Los Angeles", new DateTime(1940, 1, 1), 1504277, 
                     new DateTime(1950, 1, 1), 1970358),
         Tuple.Create("New York", new DateTime(1940, 1, 1), 7454995, 
                     new DateTime(1950, 1, 1), 7891957),  
         Tuple.Create("Chicago", new DateTime(1940, 1, 1), 3396808, 
                     new DateTime(1950, 1, 1), 3620962),  
         Tuple.Create("Detroit", new DateTime(1940, 1, 1), 1623452, 
                     new DateTime(1950, 1, 1), 1849568) };

        // Display header 
        string header = String.Format("{0,-12}{1,8}{2,12}{1,8}{2,12}{3,14}\n",
                                      "City", "Year", "Population", "Change (%)");
        Console.WriteLine(header);
        sw.WriteLine(header);
        string output;
        foreach (var city in cities)
        {
            output = String.Format("{0,-12}{1,8:yyyy}{2,12:N0}{3,8:yyyy}{4,12:N0}         {5,14:P1}",
                                   city.Item1, city.Item2, city.Item3, city.Item4,                            city.Item5,
                                   (city.Item5 - city.Item3) / (double)city.Item3);
            Console.WriteLine(output);
            sw.WriteLine(output);
        }


        sw.WriteLine("-------------------------------");

        sw.Flush();
        sw.Close();

        Console.WriteLine("File written");



    }



}
}
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用系统文本;
使用System.Windows.Forms;
使用System.IO;
名称空间part1johnskeet
{
班级计划
{
静态void Main(字符串[]参数)
{
FileStream fs=newfilestream(@“D:\tabletxt.txt”,FileMode.Create);
StreamWriter sw=新的StreamWriter(fs,UTF8Encoding.UTF8);
Console.WriteLine(“写入文件”);
西南书写线(“”);
sw.WriteLine(“-------------------------------”;
Console.WriteLine(“-----------------------------------------”;
Console.WriteLine(“名字|姓氏|年龄”);
Console.WriteLine(“-----------------------------------------”;
WriteLine(String.Format(“{0,-10}{1,-10}{2,5}”,“比尔”,“盖茨”,51));
WriteLine(String.Format(“{0,-10}{1,-10}{2,5}”,“Edna”,“Parker”,114));
WriteLine(String.Format(“{0,-10}{1,-10}{2,5}”,“Johnny”,“Depp”,44));
Console.WriteLine(“-----------------------------------------”;
sw.WriteLine(“-----------------------------------------”;
sw.WriteLine(“Name”.PadRight(13,)+“Unit.”padlight(10,)+“Rate.”padlight(6,)+“Total.”PadRight(8,)+“);
sw.WriteLine(“fas”.PadRight(13,)+“10”.padlight(10,)+“710”.padlight(6,)+“22.55”.PadRight(8,)+”);
西南写入线(“asd 1”。右键(13,)+“10.25”。左键(10,)+“20.25”。左键(6,)+“800.55”。右键(8,)+”;
软件写入线(“asd”.PadRight(13,)+“13.5”)。padlight(10,)+“35”。padlight(6,)+“600.25”。PadRight(8,)+”;
sw.WriteLine(“adas.PadRight(13)”)+“14.3”、padlight(10)”+“10”、padlight(6)”+“143”、PadRight(8)”+“);
sw.WriteLine(“asdas.PadRight(13,)+“10”.padrleft(10,)+“22.5”.padrleft(6,)+“220.5”.padrright(8,)+”);
sw.WriteLine(“asdas.PadRight(13)”)+700.padrleft(10)”+16.5.padrleft(6)”+800.15.padrright(8)”+”;
sw.WriteLine(“sdfefsdfe34rs.padrright(13,)+“800”)。padrleft(10,)+“10”。padrleft(6,)+“8000”。padrright(8,)+”;
sw.WriteLine(String.Format(“{0,-10}{1,-10}{2,5}”,“Edna”,“Parker”,114));
sw.WriteLine(String.Format(“{0,-10}{1,-10}{2,5}”,“Johnny”,“Depp”,44));
字符串string1=“asdf”;
字符串string2=“ffs”;
字符串string4=“gahah”;
字符串string5=“kjshdfkjh”;
字符串string6=“fg”;
字符串string7=“kkkdd”;
字符串string8=“asdasdf”;
string string9=“somelongtext”;
sw.WriteLine(String.Format(“string1:{0,-10}string2:{1,-10}”,string1+“,”,string2));
sw.WriteLine(String.Format(“string4:{0,-10}string5:{1,-10}”,string4+“,”,string5));
sw.WriteLine(String.Format(“string6:{0,-10}string7:{1,-10}”,string6+“,”,string7));
sw.WriteLine(String.Format(“string8:{0,-10}string9:{1,-10}”,string8+“,”,string9));
WriteLine(String.Format(“string1:{0,-10}string2:{1,-10}”,string1+“,”,string2));
WriteLine(String.Format(“string4:{0,-10}string5:{1,-10}”,string4+“,”,string5));
WriteLine(String.Format(“string6:{0,-10}string7:{1,-10}”,string6+“,”,string7));
WriteLine(String.Format(“string8:{0,-10}string9:{1,-10}”,string8+“,”,string9));
//创建包含1940-1950年美国三个城市人口数据的5元组数组。
元组[]城市=
{ 
Tuple.Create(“洛杉矶”,新日期时间(1940,1,1),1504277,
新日期时间(1950年1月1日),1970358,
Tuple.Create(“纽约”,新日期时间(1940,1,1),7454995,
新日期时间(1950年1月1日),7891957,
Tuple.Create(“芝加哥”,新日期时间(1940,1,1),3396808,
新日期时间(1950,1,1),3620962),
Tuple.Create(“底特律”,新日期时间(1940,1,1),1623452,
新的日期时间(1950年1月1日),1849568);
//显示标题
string header=string.Format(“{0,-12}{1,8}{2,12}{1,8}{2,12}{3,14}\n”,
“城市”、“年份”、“人口”、“变化(%)”;
控制台写入线(标题);
sw.WriteLine(标题);
字符串输出;
foreach(城市中的var城市)
{
output=String.Format(“{0,-12}{1,8:yyyy}{2,12:N0}{3,8:yyyy}{4,12:N0}{5,14:P1}”,
city.Item1,city.Item2,city.Item3,city.Item4,city.Item5,
(city.Item5-city.Item3)/(双)city.Item3);
控制台写入线(输出);
软件写入线(输出);
}
sw.WriteLine(“-----------------------------------------”;
sw.Flush();
sw.Close();
Console.WriteLine(“文件写入”);
}
}
}

下面是我在控制台中创建表的不同方法的代码

代码运行良好。我要做的第一件事是检查您对“d:\tabletxt.txt”的权限。您能在windows中打开该位置并使用资源管理器添加新的文本文件吗?

代码对我来说也很好,但创建的文件没有控制台格式您在控制台代码和文本文件代码中使用了不同的格式技术。尝试修改控制台代码以使用sw.writeline而不是console.writeline(并删除重复的行)。看看这是不是你要找的。否则,请更具体地说明您对此代码的期望。