Error: Could Not Find Or Load Main Class Com.example.pdfone.mainactivity
I'm new user in android and I try to view a pdf file using itext jar file. My code is: package com.example.pdfone; public class MainActivity { public static final String RES
Solution 1:
You need to learn Android first.
Your class needs to extend Activity class.
And iText can only create pdf file, viewing is not possible. Reading is possible. Use Adobe Acrobat or any other PDF tools in Android to view it.
Sample Solutions is as below for PDF Read and Write in Android
100% Working Code Screenshots as below,
activity_main.xml
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:layout_gravity="center"tools:context=".MainActivity" ><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:gravity="center"android:textAlignment="center"android:text="Android Read/Write File" /><EditTextandroid:id="@+id/fname"android:layout_width="fill_parent"android:layout_height="wrap_content"android:hint="File Name"android:text="sample_pdf_file" /><EditTextandroid:id="@+id/ftext"android:layout_width="fill_parent"android:layout_height="100px"android:hint="File Text"android:text="Hello World" /><Buttonandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:id="@+id/btnwrite"android:text="Write File" /><EditTextandroid:id="@+id/fnameread"android:layout_width="fill_parent"android:layout_height="wrap_content"android:hint="File Name"android:text="sample_pdf_file" /><Buttonandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:id="@+id/btnread"android:text="Read File" /><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:id="@+id/filecon" /></LinearLayout>
FileOperations.java
package com.example.readwrite;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.StringWriter;
import android.util.Log;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfReader;
import com.itextpdf.text.pdf.PdfWriter;
import com.itextpdf.text.pdf.parser.PdfReaderContentParser;
import com.itextpdf.text.pdf.parser.SimpleTextExtractionStrategy;
import com.itextpdf.text.pdf.parser.TextExtractionStrategy;
publicclassFileOperations {
publicFileOperations() {
}
public Boolean write(String fname, String fcontent) {
try {
Stringfpath="/sdcard/" + fname + ".pdf";
Filefile=newFile(fpath);
// If file does not exists, then create itif (!file.exists()) {
file.createNewFile();
}
// step 1Documentdocument=newDocument();
// step 2
PdfWriter.getInstance(document,
newFileOutputStream(file.getAbsoluteFile()));
// step 3
document.open();
// step 4
document.add(newParagraph("Hello World!"));
document.add(newParagraph("Hello World2!"));
// step 5
document.close();
Log.d("Suceess", "Sucess");
returntrue;
} catch (IOException e) {
e.printStackTrace();
returnfalse;
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
returnfalse;
}
}
public String read(String fname) {
BufferedReaderbr=null;
Stringresponse=null;
try {
StringBufferoutput=newStringBuffer();
Stringfpath="/sdcard/" + fname + ".pdf";
PdfReaderreader=newPdfReader(newFileInputStream(fpath));
PdfReaderContentParserparser=newPdfReaderContentParser(reader);
StringWriterstrW=newStringWriter();
TextExtractionStrategy strategy;
for (inti=1; i <= reader.getNumberOfPages(); i++) {
strategy = parser.processContent(i,
newSimpleTextExtractionStrategy());
strW.write(strategy.getResultantText());
}
response = strW.toString();
} catch (IOException e) {
e.printStackTrace();
returnnull;
}
return response;
}
}
MainActivity.java
package com.example.readwrite;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
publicclassMainActivityextendsActivity {
EditText fname, fcontent, fnameread;
Button write, read;
TextView filecon;
@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fname = (EditText) findViewById(R.id.fname);
fcontent = (EditText) findViewById(R.id.ftext);
fnameread = (EditText) findViewById(R.id.fnameread);
write = (Button) findViewById(R.id.btnwrite);
read = (Button) findViewById(R.id.btnread);
filecon = (TextView) findViewById(R.id.filecon);
write.setOnClickListener(newView.OnClickListener() {
@OverridepublicvoidonClick(View arg0) {
// TODO Auto-generated method stubStringfilename= fname.getText().toString();
Stringfilecontent= fcontent.getText().toString();
FileOperationsfop=newFileOperations();
fop.write(filename, filecontent);
if (fop.write(filename, filecontent)) {
Toast.makeText(getApplicationContext(),
filename + ".pdf created", Toast.LENGTH_SHORT)
.show();
} else {
Toast.makeText(getApplicationContext(), "I/O error",
Toast.LENGTH_SHORT).show();
}
}
});
read.setOnClickListener(newView.OnClickListener() {
@OverridepublicvoidonClick(View arg0) {
// TODO Auto-generated method stubStringreadfilename= fnameread.getText().toString();
FileOperationsfop=newFileOperations();
Stringtext= fop.read(readfilename);
if (text != null) {
filecon.setText(text);
} else {
Toast.makeText(getApplicationContext(), "File not Found",
Toast.LENGTH_SHORT).show();
filecon.setText(null);
}
}
});
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.example.readwrite"android:versionCode="1"android:versionName="1.0" ><uses-sdkandroid:minSdkVersion="14"android:targetSdkVersion="18" /><uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permissionandroid:name="android.permission.READ_EXTERNAL_STORAGE"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ><activityandroid:name="com.example.readwrite.MainActivity"android:label="@string/app_name" ><intent-filter><actionandroid:name="android.intent.action.MAIN" /><categoryandroid:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application></manifest>
Make sure you have the itextpdf-5.5.1.jar in the right location as below,
Post a Comment for "Error: Could Not Find Or Load Main Class Com.example.pdfone.mainactivity"