2011-04-08 108 views
1

如果有可能从源文件读取,像这样:如何写入资源文件?

string fileContent = Resources.Users; 

using (var reader = new StringReader(fileContent)) 
{ 
    string line; 
    while ((line = reader.ReadLine()) != null) 
    { 
     string[] split = line.Split('|'); 
     string name = split[0]; 
     string last = split[1]; 

    } 
} 

那么你怎么能写在同一个文件?

回答

6

您可以使用ResourceWriter。 我也建议您使用ResourceManager从文件中读取。从链接源

代码:

using System; 
using System.Resources; 

public class WriteResources { 
    public static void Main(string[] args) { 

    // Creates a resource writer. 
    IResourceWriter writer = new ResourceWriter("myResources.resources"); 

    // Adds resources to the resource writer. 
    writer.AddResource("String 1", "First String"); 

    writer.AddResource("String 2", "Second String"); 

    writer.AddResource("String 3", "Third String"); 

    // Writes the resources to the file or stream, and closes it. 
    writer.Close(); 
    } 
} 
+10

有什么不妥包括您链接到文章的显着内容。事实上,从长远来看,这会让你的回答更好,因为你永远不知道MSDN何时会改变他们的网址 – 2011-04-08 19:15:27

+0

@Conrad:好点。请牢记这一点。 – WorldIsRound 2011-04-08 19:26:15

1

试试这个

class Test { 
    public static void Main() { 
    ResourceWriter rw = new ResourceWriter("English.resources"); 
    rw.AddResource("Name", "Test"); 
    rw.AddResource("Ver", 1.0); 
    rw.AddResource("Author", "www.java2s.com"); 
    rw.Generate(); 
    rw.Close(); 
    } 
} 
+0

认为问题在于如何写入文件。您的代码似乎正在显示值。 – WorldIsRound 2011-04-08 19:08:50

+0

@WorldsRound此代码写入English.resources文件 – anishMarokey 2011-04-08 19:11:14

+0

啊,对。您已更新您发布的源代码! – WorldIsRound 2011-04-08 19:27:22

1
string path = @"c:\temp\contentfilelocation.extension"; //path to resource file location 
if (!File.Exists(path)) 
{ 
    // Create a file to write to. 
    using (StreamWriter writer = File.CreateText(path)) 
      { 
       string line = "<name>" + "|" + "<last>"; 
       writer.WriteLine(); 
      } 
     } 
+0

,给我一个错误,因为无法将字符串转换为字符串... – 2011-04-08 20:00:34

+0

我更新了代码,路径应该是您要写入的文件的位置。 – Priyank 2011-04-08 20:28:05