搜索文件并附加到

时间:2016-09-23 17:45:50

标签: java file-io

我有一个程序,它根据给定的目录路径搜索文件(它已经有一些内容),并允许用户向该文件添加更多内容。我能够显示目录中的所有文件,但我不知道如何选择文件并向其中写入更多内容。到目前为止,这是我的代码:

public static void main(String [] args)
    {

    // This shows all the files on the directory path
    File dir = new File("/Users/NasimAhmed/Desktop/");
    String[] children = dir.list();
    if (children == null) 
    {
        System.out.println("does not exist or is not a directory");
    }
    else 
    {
        for (int i = 0; i < children.length; i++) 
        {
            String filename = children[i];
            System.out.println(filename);
            // write content to sample.txt that is in the directory
            out(dir, "sample.txt");
        }
    }
}

public static void out(File dir, String fileName)
{
    FileWriter writer;

    try
    {
        writer = new FileWriter(fileName);
        writer.write("Hello");
        writer.close();
    }
    catch(IOException e)
    {
        e.printStackTrace();
    }

}

2 个答案:

答案 0 :(得分:1)

示例附加到文件:

public class Model
{
    public string Text { get; set; }
}

BindingList<Model> list = new BindingList<Model>();

private void Form1_Load(object sender, EventArgs e)
{
    var column1 = new DataGridViewTextBoxColumn();
    column1.CellTemplate = new MyDataGridViewTextBoxCell();
    column1.AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
    column1.DataPropertyName = "Text";
    column1.DefaultCellStyle = new DataGridViewCellStyle();
    column1.DefaultCellStyle.WrapMode = DataGridViewTriState.True;
    column1.HeaderText = "Text";
    column1.Name = "column1";

    dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
    dataGridView1.Columns.Add(column1);

    this.dataGridView1.DataSource = list;
}

private void button1_Click(object sender, EventArgs e)
{
    list.Add(new Model() { Text = textBox1.Text });
}

答案 1 :(得分:0)

// write content to sample.txt that is in the directory
try {
    Files.write(Paths.get("/Users/NasimAhmed/Desktop/" + filename), "the text".getBytes(), StandardOpenOption.APPEND);
}catch (IOException e) {
    //exception handling left as an exercise for the reader
}

已使用 - How to append text to an existing file in Java