TECNOLOBO

No recuerdas tu codigo?
Se te olvido como se hace?

Aqui podras guardar lo que necesiten
Y cuando sea necesesario

Creado por julian gomez
iiiiii

crear archivos en dispositivo



Descripcion

Nota


Como instalar   : https://ionicframework.com/docs/v5/native/file
funcionalidades : https://github.com/apache/cordova-plugin-file

1. ionic capacitor add android
2. npm run build (crea la carpeta www)
3. npm install @awesome-cordova-plugins/file 
4. como es un plugin de cordova 
	4.1 : ionic integrations disable capacitor
	4.2 : ionic integrations enable cordova
	4.3 : ionic cordova plugin add cordova-plugin-file
	4.4 : npx cap ls 
5. ionic integrations enable capacitor
6. npx cap sync

7. implementamos el plugin  app.module
	import { File} from '@awesome-cordova-plugins/file/ngx';
	providers: [File]

8. vamos a nuestro archivo.ts donde queremos implementarlo y lo inyectamos
	import { DirectoryEntry, File, FileEntry } from '@awesome-cordova-plugins/file/ngx';

9.
						

typescript


//Punto 6
/**********************Iniico app module**************************/
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';

import { IonicModule, IonicRouteStrategy } from '@ionic/angular';

import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';
import { File} from '@awesome-cordova-plugins/file/ngx'; //Plugin importacion

@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],
  providers: [File,{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }],
  bootstrap: [AppComponent],
})
export class AppModule {}

/**************************FIN APP MODULE**********************/

/*-------------------------------------------------------------------------------------------*

/**************************INICIO home.ts**********************/
import { Component, OnInit } from '@angular/core';
import { IonItem, Platform } from '@ionic/angular';

//declare let cordova:any;
//plugin usado : https://github.com/apache/cordova-plugin-file
//ionic integrations disable capacitor
import { DirectoryEntry, File, FileEntry } from '@awesome-cordova-plugins/file/ngx';

@Component({
  selector: 'app-home',
  templateUrl: 'home.page.html',
  styleUrls: ['home.page.scss'],
})
export class HomePage {


  directorio:string=this.ctrFile.externalCacheDirectory;

  constructor(private ctrFile: File,
    public platform: Platform
    ) {
    }
  

  crearFile(){
    const nombreArchivo='julianArchivo.txt';
    
    console.log("ok");
    
    console.log('applicationDirectory='+this.ctrFile.applicationDirectory);
    console.log('applicationStorageDirectory='+this.ctrFile.applicationStorageDirectory);
    console.log('externalApplicationStorageDirectory='+this.ctrFile.externalApplicationStorageDirectory);    
    console.log('applicationStorageDirectory='+this.ctrFile.dataDirectory);   
    console.log('externalCacheDirectory='+this.ctrFile.externalCacheDirectory);   
    
    
    

    this.ctrFile.checkFile(this.directorio,nombreArchivo)
    .then(creado=>console.log("Archivo ya existe en ="+this.directorio))
    .catch(data=>{
      
      console.log("el archivo No existe en "+this.directorio+ ' mensaje catch='+data);
      
      //creamos archivo
      this.ctrFile.createFile(this.directorio,nombreArchivo,false)
      .then(FileEntry=>{
        this.escrbirArchivo(this.directorio,nombreArchivo,'Escribi en el dispositivo nombre=');
        console.log("nombre del archivo creado es="+FileEntry.name);
        
      })
      .catch(erro=>console.log("Error no se puedo crear el archivo = "+erro));
      //Fin crear archivo.

    });
    
   

  } 

  escrbirArchivo(directorio:string,nombreArchiv:string,textoFile:string){
    //julianArchivo.txt
    //'documentojulian'
    this.ctrFile.writeFile(
      directorio, nombreArchiv, textoFile, {replace:true}
    ).then((nuevoarchivo:any)=>{
      console.log("arhico creado");
      console.log(nuevoarchivo);
    }).catch((error:any)=>{
      console.log("archivo erro");
      console.log(error);
    });  

  }
 
  


}


/***************************FIN home.ts************************/