Jump to content
CoralieRENAUX

Android Studio Java Création fichier txt convertie en pdf et envoyer par mail

Recommended Posts

Bonjour je m'explique un peu mieux j'ai crée une application sur android Studio qui consiste a récupérer des information de l'utilisateur (text, image ) pour ensuite le convertier en pdf et l'envoyer par mail mais quand je transfére le mail la pièce jointe ni est  pas du cous je c'est pas si c'est l'envoi ou le convertisseur ou l'enregistrement dans le fichier  text qui ne fonctionne pas .

Je vous mais les différent code si vous pouvez maider.

code enregistrement en interne : 

mPlayButton6.setOnClickListener(new View.OnClickListener() {

    private String numéro = ("Affaire:" + DA23);
    private String com = ("Commune:" + Commune);
    private String chant = ("Chantier:" + chantier);
    private String prest = ("Prestataire:" + Prestataire);

    private View v;

    @Override
    public void onClick(View v) {
        this.v = v;




        File myFile = new File("/android/data/com.google.android.apps.docs/files/appli_test",INFO); //on déclare notre futur fichier

        File myDir = new File("/android/data/com.google.android.apps.docs/files/appli_test"); //pour créer le repertoire dans lequel on va mettre notre fichier
        Boolean success=true;
        if (!myDir.exists()) {
            success = myDir.mkdir(); //On crée le répertoire (s'il n'existe pas!!)
        }
        if (success){

            String data = numéro + com + chant + prest ;

            FileOutputStream output = null; //le true est pour écrire en fin de fichier, et non l'écraser
            try {
                output = new FileOutputStream(myFile, true);
            }catch (FileNotFoundException e) {
                e.printStackTrace();
            }



            try {
                output.write(data.getBytes());
            }


            catch (IOException e) {
                e.printStackTrace();
            }
        }
        else {Log.e("TEST1","ERROR DE CREATION DE DOSSIER");}


            Intent MainActivityIntent = new Intent(Naffaire.this, PosteAvtivity.class);
        startActivity(MainActivityIntent);

    }



});
Code du convertisseur et de l'envoie :

public static final String TEXT
= "/android/data/com.google.android.apps.docs/files/appli_test/info.txt";
public static final String DEST
= "/android/data/com.google.android.apps.docs/files/appli_test/info.pdf";
 
CréationPdf.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                    File file = new File(DEST);
                    file.getParentFile().mkdirs();
                    try {
                        createPdf(DEST);
                    } catch (DocumentException e) {
                        e.printStackTrace();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }


                Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
                        "mailto", "coralie-renaux@hotmail.com", null));
// Subject
                emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Contrôle CTO");
// Body of email
                emailIntent.putExtra(Intent.EXTRA_TEXT, "Contrôle CTO du poste numéro d'affaire :" + DA23);

                emailIntent.putExtra(Intent.ACTION_SEND, "");
// File attachment
                emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("/android/data/com.google.android.apps.docs/files/appli_test/info.pdf"));


// Check if the device has an email client
                if (emailIntent.resolveActivity(getPackageManager()) != null) {
                    // Prompt the user to select a mail app
                    startActivity(Intent.createChooser(emailIntent, "Choose your mail application"));
                } else {
                    // Inform the user that no email clients are installed or provide an alternative
                }
            }

            public void createPdf(String dest)
                    throws DocumentException, IOException {
                Document document = new Document();
                PdfWriter.getInstance(document, new FileOutputStream(dest));
                document.open();
                BufferedReader br = new BufferedReader(new FileReader(TEXT));
                String line;
                Paragraph p;
                Font normal = new Font(Font.FontFamily.TIMES_ROMAN, 12);
                Font bold = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD);
                boolean title = true;
                while ((line = br.readLine()) != null) {
                    p = new Paragraph(line, title ? bold : normal);
                    p.setAlignment(Element.ALIGN_JUSTIFIED);
                    title = line.isEmpty();
                    document.add(p);
                }
                document.close();
            }

        });



Merci par avance.

Cordialement,

Coralie RENAUX

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.






  • Similar Content

    • By GregBrs
      Bonjour,
       
      J'ai acheté récemment le Redmi Note 8 Pro et j'ai remarqué très rapidement un problème plutôt spécial. Quand j'utilise mon casque Bluetooth JBL, téléphone à plat (posé sur une table par ex.) il fonctionne bien, mais dès que je prend le tel en main et le met verticalement, de grosses micro-coupures de font apparaître puis le casque se déconnecte tout seul du tel... 
      Quelqu'un sait d'où viens ce problème et comme le résoudre au plus vite svp ?
    • By Patricknam
      Bonjour, nouveau détenteur d'un MI 9 T Pro offert neuf par mes enfants, je reste en demi-teinte face à certaines applications. J'ai notamment voulu utiliser Call Recorder que j'avais depuis longtemps sur mon Samsung S7 (HS depuis 2 mois) mais après l'installation de l'application gratuite, puis celle Pro (payante) je n'arrive toujours pas à écouter les messages. J'ai tenté d'installer une autre application payante mais toujours les mêmes symptômes : les enregistrements apparaissent mais en lecture rien ne sort ! J'ai vérifié tous les paramètre des applications, j'ai vérifié les autorisation ... mais rien de mieux ! J'en suis réduit à me dire qu'il s'agit d'un problème de paramétrage de mon téléphone ! Y a-t-il une chance de me faire retrouver ce genre d'application tellement utile pour moi ?
      Merci  et à très vite !
    • By Patricknam
      Bonjour, nouveau détenteur d'un MI 9 T Pro offert neuf par mes enfants, je reste en demi-teinte face à certaines applications. J'ai notamment voulu utiliser Call Recorder que j'avais depuis longtemps sur mon Samsung S7 (HS depuis 2 mois) mais après l'installation de l'application gratuite, puis celle Pro (payante) je n'arrive toujours pas à écouter les messages. J'ai tenté d'installer une autre application payante mais toujours les mêmes symptômes : les enregistrements apparaissent mais en lecture rien ne sort ! J'ai vérifié tous les paramètre des applications, j'ai vérifié les autorisation ... mais rien de mieux ! J'en suis réduit à me dire qu'il s'agit d'un problème de paramétrage de mon téléphone ! Y a-t-il une chance de me faire retrouver ce genre d'application tellement utile pour moi ?
      Merci  et à très vite !

    • By AlexisBR
      J'ai trouvé un moyen hyper efficace et super simple pour installer les services de Google sur mon Huawei, et en une seule minute.
       
      Allez sur le lien suivant https://1drv.ms/u/s!AqNsa7RrdPgfa_9zDLqnnoJz47M?e=ea3Pgd pour télécharger le fichier sur votre smartphone, ensuite l’installer directement.
       
      Puis cliquez sur ACTIVER-> OUVRIR-> Détecter votre device (pas besoin de s’enregistrer) -> REPAIR NOW. Attendez jusqu'à la fin de l’installation, et vous avez Play Store sur votre mobile, EZ 😁

       
       

       
    • By ThePixus
      Bonjour, 
      Mon s10plus vient normalement d'Angleterre mais en version française donc entièrement en français. Jusqu'à présent aucun problème sauf maintenant car la mise à jour vers Android 10 n'est toujours pas disponible en automatique et pour Samsung pay je n'arrive pas à rajouter une carte crédit agricole. Comment savoir si c'est bien un smartphone avec région France ou si il est bloqué sur une autre région du monde ? Et sinon avez vous des solutions ? 
       
      Merci bien et à bientôt :) 
×
×
  • Create New...