public static async Task WriteFile(Context context, Uri uri, string data) { await Task.Run(async delegate { Stream output = null; OutputStreamWriter outputWriter = null; BufferedWriter bufferedWriter = null; try { output = context.ContentResolver.OpenOutputStream(uri); outputWriter = new OutputStreamWriter(output); bufferedWriter = new BufferedWriter(outputWriter); await bufferedWriter.WriteAsync(data); await bufferedWriter.FlushAsync(); } finally { bufferedWriter?.Close(); outputWriter?.Close(); output?.Close(); } }); }
private async Task DoHtmlBackup(Uri uri) { var backup = await HtmlBackup.FromAuthenticatorList(this, _authSource.GetAll()); Stream output = null; BufferedWriter writer = null; try { output = ContentResolver.OpenOutputStream(uri); writer = new BufferedWriter(new OutputStreamWriter(output)); await writer.WriteAsync(backup.ToString()); await writer.FlushAsync(); } catch (Exception) { ShowSnackbar(Resource.String.genericError, Snackbar.LengthShort); return; } finally { writer?.Close(); output?.Close(); } PreferenceManager.GetDefaultSharedPreferences(this) .Edit() .PutBoolean("needsBackup", false) .Commit(); ShowSnackbar(Resource.String.saveSuccess, Snackbar.LengthLong); }
public async Task PrintText(string text, bool addLineFeeds = false) { if (!_bluetoothSocket.IsConnected) { await ConnectToBluetoothSocket(); } await AddFormat(); using var inReader = new BufferedReader(new InputStreamReader(_bluetoothSocket.InputStream)); using var outReader = new BufferedWriter(new OutputStreamWriter(_bluetoothSocket.OutputStream)); await outReader.WriteAsync(text); await outReader.NewLineAsync(); if (addLineFeeds) { await outReader.NewLineAsync(); await outReader.NewLineAsync(); await outReader.NewLineAsync(); await outReader.NewLineAsync(); await outReader.NewLineAsync(); } await outReader.FlushAsync(); Java.Lang.Thread.Sleep(1000); inReader.Ready(); await inReader.SkipAsync(0); }