将一些文本插入到现有文本文件的确切位置

时间:2016-08-22 07:50:20

标签: c# file

我正在尝试在现有文件的精确位置插入一些文本。 我应用的第一种方法 - 哪个没有影响?

       string newData;
       string data = System.IO.File.ReadAllText("lal.txt");
       int indx = data.IndexOf("1");
       if (data.Contains("1"))
       {
           MessageBox.Show(indx.ToString());
           newData=data.Insert(indx+1, "ooooooooooooooooooooooooo");
           File.WriteAllText("lal.txt",data);

       }

我正在使用的另一种方法 - 此方法完全删除所有内容或不创建内容???

 string newData;
        string data = System.IO.File.ReadAllText("lal.txt");
       int indx = data.IndexOf("1");
       if (data.Contains("1"))
       {
           MessageBox.Show(indx.ToString());
           newData=data.Insert(indx+1, "ooooooooooooooooooooooooo");

           var f = new StreamWriter(File.Create("ll1.txt"));
           f.Write(newData);
           //data.Insert(indx, "OIasasas");
       }

1 个答案:

答案 0 :(得分:0)

第一个代码段有错误:更改的字符串在newData变量中,但是您将未更改的字符串写入文件。

第二个代码段有另一个错误:您编写了正确的字符串,但没有关闭文件流,因此可能无法进行更改。

这应该有效

NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
            .setLargeIcon(
                    BitmapFactory.decodeResource(
                            getResources(), R.drawable.app_icon))
            .setSmallIcon(R.drawable.app_logo_white_small)
            .setContentTitle(mContext.getString(R.string.app_name))
            .setDefaults(Notification.DEFAULT_ALL)
            .setContentText(msg)
            .setStyle(new NotificationCompat.BigTextStyle().bigText(msg))
            .setContentIntent(getPendingIntent())
            .setAutoCancel(true);
    NotificationManager notificationManager =
            (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

 notificationManager.notify((int) System.currentTimeMillis(), notificationBuilder.build());