# SetFileContents

> Sets the content of a new file to the specified string.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.Android](/engine/6000.0/script-reference/unityeditor/android.md)
* **Assembly:** UnityEditor.Android.Extensions

## SetFileContents(string, string)

Sets the content of a new file to the specified string.

```csharp
public void SetFileContents(string path, string contents)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The file to write to. This path is relative to the Gradle project path.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The string content to write to the file. Unity encodes the string as UTF-8 when it writes the file.

### Remarks

To use this method, you must first declare the new file in [AndroidProjectFilesModifier.Setup](/engine/6000.0/script-reference/unityeditor/android/androidprojectfilesmodifier/setup.md) using the [AndroidProjectFilesModifierContext.AdditionalOutputs.AddFileWithContents](/engine/6000.0/script-reference/unityeditor/android/androidprojectfilesmodifiercontext/additionaloutputs/addfilewithcontents.md) method.

The following example declares a new text file in the `Setup` method and writes string content to it during the build.

### Examples

```csharp
using UnityEditor.Android;

public class ModifyProjectScript : AndroidProjectFilesModifier
{
    // Configure the required settings/outputs to modify the Android project files.
    public override AndroidProjectFilesModifierContext Setup()
    {
        var projectFilesContext = new AndroidProjectFilesModifierContext();

        // Declare the new file.
        projectFilesContext.Outputs.AddFileWithContents("AdditionalContent/ModifyProjectTextFile.txt");

        return projectFilesContext;
    }

    // Modify the Android project files.
    public override void OnModifyAndroidProjectFiles(AndroidProjectFiles projectFiles)
    {
        // Set the file contents. This requires the file to be added to the outputs in the Setup method.
        projectFiles.SetFileContents("AdditionalContent/ModifyProjectTextFile.txt", "This was created in the OnModifyAndroidProjectFiles method");
    }
}
```

## SetFileContents(string, byte\[])

Sets the content of a new file to the specified bytes.

```csharp
public void SetFileContents(string path, byte[] contents)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The file to write to. This path is relative to the Gradle project path.**** (\[byte\[]]\(https\://learn.microsoft.com/dotnet/api/system.byte)): The byte array content to write to the file.

### Remarks

To use this method, you must first declare the new file in [AndroidProjectFilesModifier.Setup](/engine/6000.0/script-reference/unityeditor/android/androidprojectfilesmodifier/setup.md) using the [AndroidProjectFilesModifierContext.AdditionalOutputs.AddFileWithContents](/engine/6000.0/script-reference/unityeditor/android/androidprojectfilesmodifiercontext/additionaloutputs/addfilewithcontents.md) method.

The following example declares a new file in the `Setup` method and writes byte array content to it during the build.

### Examples

```csharp
using UnityEditor.Android;

public class ModifyProjectScript : AndroidProjectFilesModifier
{
    // Configure the required settings/outputs to modify the Android project files.
    public override AndroidProjectFilesModifierContext Setup()
    {
        var projectFilesContext = new AndroidProjectFilesModifierContext();

        // Declare the new file.
        projectFilesContext.Outputs.AddFileWithContents("AdditionalContent/ModifyProjectBinaryFile.bin");

        return projectFilesContext;
    }

    // Modify the Android project files.
    public override void OnModifyAndroidProjectFiles(AndroidProjectFiles projectFiles)
    {
        // Set the file contents. This requires the file to be added to the outputs in the Setup method.
        byte[] contents = new byte[] { 0x01, 0x02, 0x03, 0x04 };
        projectFiles.SetFileContents("AdditionalContent/ModifyProjectBinaryFile.bin", contents);
    }
}
```
