Bagikan melalui


Tugas WriteLinesToFile

Tulis jalur dari item yang ditentukan ke file teks yang ditentukan.

Parameter tugas

Tabel berikut ini menjelaskan parameter tugas WriteLinestoFile.

Parameter Deskripsi
File Parameter ITaskItem wajib.

Tentukan file untuk menulis item.
Lines Parameter ITaskItem[] opsional.

Tentukan item untuk menulis file. Defaultnya adalah daftar kosong.
Overwrite Parameter Boolean opsional.

Jika true, tugas menimpa konten yang ada dalam file. Defaultnya adalah false.
Encoding Parameter String opsional.

Pilih pengodean karakter, misalnya, "Unicode". Defaultnya adalah UTF-8. Lihat juga Encoding.
WriteOnlyWhenDifferent Parameter Boolean opsional.

Jika true, file target yang ditentukan, jika ada, akan dibaca terlebih dahulu untuk membandingkan dengan apa yang akan ditulis tugas. Jika identik, file tidak ditulis ke disk dan tanda waktu akan dipertahankan. Defaultnya adalah false.

Keterangan

Jika Overwrite adalah true, membuat file baru, tulis konten ke file, lalu tutup file. Jika file sudah ada, file akan ditimpa. Jika Overwrite adalah false, tambahkan konten ke file, buat file target jika belum ada.

Selain parameter yang tercantum di atas, tugas ini mewarisi parameter dari kelas TaskExtension, yang mewarisi sendiri dari kelas Task. Untuk daftar parameter tambahan ini dan deskripsinya, lihat kelas dasar TaskExtension.

Contoh

Contoh berikut menggunakan WriteLinesToFile tugas untuk menulis jalur item dalam MyItems koleksi item ke file yang ditentukan oleh MyTextFile koleksi item.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">

    <ItemGroup>
        <MyTextFile Include="Items.txt"/>
        <MyItems Include="*.cs"/>
    </ItemGroup>

    <Target Name="WriteToFile">
        <WriteLinesToFile
            File="@(MyTextFile)"
            Lines="@(MyItems)"
            Overwrite="true"
            Encoding="Unicode"/>
    </Target>

</Project>

Dalam contoh ini kita menggunakan properti dengan baris baru yang disematkan untuk menulis file teks dengan beberapa baris. Jika entri dalam Lines telah menyematkan karakter baris baru, baris baru akan disertakan dalam file output. Dengan cara ini, Anda dapat mereferensikan properti multi-baris.

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>

  <Target Name="WriteLaunchers" AfterTargets="CopyFilesToOutputDirectory">
      <PropertyGroup>
        <LauncherCmd>
@ECHO OFF
dotnet %~dp0$(AssemblyName).dll %*
        </LauncherCmd>
      </PropertyGroup>

      <WriteLinesToFile
        File="$(OutputPath)$(AssemblyName).cmd"
        Overwrite="true"
        Lines="$(LauncherCmd)" />
  </Target>
</Project>

Baca juga