code=HTML]<form name="upload" enctype="multipart/form-data" method="post" action="test.jsp">
上傳檔案位置:
<input type="text" name="upload" value="" /><br><input type="submit" value="確定">
<input type="reset" value="清除" >
</form>[/code]
test.jsp將會執行JavaBean
<HTML>
<%@ page language="java"
contentType="text/html; charset=Big5"
import="JBeans.gps"
%>
<BODY>
<jsp:useBean id="gps" scope="session" class="JBeans.gps"/>
</BODY>
</HTML>
下面我不知道該怎麼執行
因為我的執行位置是寫死固定的
要怎麼樣才能靠初始網頁的upload欄位所填入的值來當作下面程式的執行位置
我所說的就是下面這行
InputStream fip = new BufferedInputStream(new FileInputStream("c://dog.jpg"));
我讀檔的位置是固定寫死的
我該怎麼完成利用上面網頁的上傳位置再利用JavaBean執行JAVA程式
不過這c://dog.jpg 要改成變數還是什麼嗎好讓網頁來讀取位置
如果是利用JavaBean的話不是要先編譯成CLASS檔案嗎
如果變成CLASS檔案的話有辦法利用網頁來傳送值嗎
或者是例用別的方法來完成
請高手教我
import java.io.*;import java.util.*;
import java.text.*;
//import java.awt.*;
import java.awt.image.*;
import java.awt.geom.AffineTransform;
import javax.imageio.*;
import javax.imageio.stream.*;import mediautil.gen.*;
import mediautil.gen.directio.*;
import mediautil.image.*;
import mediautil.image.jpeg.*;
public class SetGpsInfo { public static void main(String[] args) throws Exception {
我想將這行c://dog.jpg的檔案位置這是固定的 ,我想改成先前的上傳位置C://upload/dog.jpg
我更不知道的為壓下網址確認鍵之後的觸發 我該怎麼將這行位置傳送給這個JAVA程式使用來當他的讀檔位置,也不
知道壓下確認鍵後怎麼會執行這個JAVA程式
有人知道我該要怎麼做嗎? 如果能的話請可以修改給我看嗎?
能的話可以順便說明這個地方是屬於JSP還是JAVA的哪個部份
InputStream fip = new BufferedInputStream(new FileInputStream("c://dog.jpg"));
LLJTran llj = new LLJTran(fip);
try {
llj.read(LLJTran.READ_INFO, true);
} catch (LLJTranException e) {
e.printStackTrace();
} AbstractImageInfo imageInfo = llj.getImageInfo(); if(! (imageInfo instanceof Exif))
{
System.out.println("Sorry Image Does not have Exif. Exitting." + imageInfo);
System.exit(1);
} Exif exif = (Exif) imageInfo;
IFD mainIfd = exif.getIFDs()[0];
IFD gpsIfd = mainIfd.getIFD(Exif.GPSINFO);
Entry e; // Set Latitude
e = new Entry(Exif.ASCII);
e.setValue(0, 'N');
gpsIfd.setEntry(new Integer(Exif.GPSLatitudeRef), 0, e);
e = new Entry(Exif.RATIONAL);
e.setValue(0, new Rational(45, 1));
e.setValue(1, new Rational(35, 1));
e.setValue(2, new Rational(25, 1));
gpsIfd.setEntry(new Integer(Exif.GPSLatitude), 0, e);
e = new Entry(Exif.BYTE); // Set Longitude
e = new Entry(Exif.ASCII);
e.setValue(0, 'E');
gpsIfd.setEntry(new Integer(Exif.GPSLongitudeRef), 0, e);
e = new Entry(Exif.RATIONAL);
e.setValue(0, new Rational(87, 1));
e.setValue(1, new Rational(40, 1));
e.setValue(2, new Rational(30, 1));
gpsIfd.setEntry(new Integer(Exif.GPSLongitude), 0, e);
e = new Entry(Exif.BYTE); e.setValue(0, new Integer(1)); // This picture is taken underwater :-)
// Use 0 if it is taken above sea
// level
gpsIfd.setEntry(new Integer(Exif.GPSAltitudeRef), 0, e);
e = new Entry(Exif.RATIONAL);
e.setValue(0, new Rational(100, 1));
gpsIfd.setEntry(new Integer(Exif.GPSAltitude), 0, e); llj.refreshAppx(); // Recreate Marker Data for changes done OutputStream out = new BufferedOutputStream(new FileOutputStream("c://w.jpg")); // Transfer remaining of image to output with new header.
llj.xferInfo(null, out, LLJTran.REPLACE, LLJTran.REPLACE); fip.close();
out.close(); llj.freeMemory();
}
}
上傳檔案位置:
<input type="text" name="upload" value="" /><br><input type="submit" value="確定">
<input type="reset" value="清除" >
</form>[/code]
test.jsp將會執行JavaBean
<HTML>
<%@ page language="java"
contentType="text/html; charset=Big5"
import="JBeans.gps"
%>
<BODY>
<jsp:useBean id="gps" scope="session" class="JBeans.gps"/>
</BODY>
</HTML>
下面我不知道該怎麼執行
因為我的執行位置是寫死固定的
要怎麼樣才能靠初始網頁的upload欄位所填入的值來當作下面程式的執行位置
我所說的就是下面這行
InputStream fip = new BufferedInputStream(new FileInputStream("c://dog.jpg"));
我讀檔的位置是固定寫死的
我該怎麼完成利用上面網頁的上傳位置再利用JavaBean執行JAVA程式
不過這c://dog.jpg 要改成變數還是什麼嗎好讓網頁來讀取位置
如果是利用JavaBean的話不是要先編譯成CLASS檔案嗎
如果變成CLASS檔案的話有辦法利用網頁來傳送值嗎
或者是例用別的方法來完成
請高手教我
import java.io.*;import java.util.*;
import java.text.*;
//import java.awt.*;
import java.awt.image.*;
import java.awt.geom.AffineTransform;
import javax.imageio.*;
import javax.imageio.stream.*;import mediautil.gen.*;
import mediautil.gen.directio.*;
import mediautil.image.*;
import mediautil.image.jpeg.*;
public class SetGpsInfo { public static void main(String[] args) throws Exception {
我想將這行c://dog.jpg的檔案位置這是固定的 ,我想改成先前的上傳位置C://upload/dog.jpg
我更不知道的為壓下網址確認鍵之後的觸發 我該怎麼將這行位置傳送給這個JAVA程式使用來當他的讀檔位置,也不
知道壓下確認鍵後怎麼會執行這個JAVA程式
有人知道我該要怎麼做嗎? 如果能的話請可以修改給我看嗎?
能的話可以順便說明這個地方是屬於JSP還是JAVA的哪個部份
InputStream fip = new BufferedInputStream(new FileInputStream("c://dog.jpg"));
LLJTran llj = new LLJTran(fip);
try {
llj.read(LLJTran.READ_INFO, true);
} catch (LLJTranException e) {
e.printStackTrace();
} AbstractImageInfo imageInfo = llj.getImageInfo(); if(! (imageInfo instanceof Exif))
{
System.out.println("Sorry Image Does not have Exif. Exitting." + imageInfo);
System.exit(1);
} Exif exif = (Exif) imageInfo;
IFD mainIfd = exif.getIFDs()[0];
IFD gpsIfd = mainIfd.getIFD(Exif.GPSINFO);
Entry e; // Set Latitude
e = new Entry(Exif.ASCII);
e.setValue(0, 'N');
gpsIfd.setEntry(new Integer(Exif.GPSLatitudeRef), 0, e);
e = new Entry(Exif.RATIONAL);
e.setValue(0, new Rational(45, 1));
e.setValue(1, new Rational(35, 1));
e.setValue(2, new Rational(25, 1));
gpsIfd.setEntry(new Integer(Exif.GPSLatitude), 0, e);
e = new Entry(Exif.BYTE); // Set Longitude
e = new Entry(Exif.ASCII);
e.setValue(0, 'E');
gpsIfd.setEntry(new Integer(Exif.GPSLongitudeRef), 0, e);
e = new Entry(Exif.RATIONAL);
e.setValue(0, new Rational(87, 1));
e.setValue(1, new Rational(40, 1));
e.setValue(2, new Rational(30, 1));
gpsIfd.setEntry(new Integer(Exif.GPSLongitude), 0, e);
e = new Entry(Exif.BYTE); e.setValue(0, new Integer(1)); // This picture is taken underwater :-)
// Use 0 if it is taken above sea
// level
gpsIfd.setEntry(new Integer(Exif.GPSAltitudeRef), 0, e);
e = new Entry(Exif.RATIONAL);
e.setValue(0, new Rational(100, 1));
gpsIfd.setEntry(new Integer(Exif.GPSAltitude), 0, e); llj.refreshAppx(); // Recreate Marker Data for changes done OutputStream out = new BufferedOutputStream(new FileOutputStream("c://w.jpg")); // Transfer remaining of image to output with new header.
llj.xferInfo(null, out, LLJTran.REPLACE, LLJTran.REPLACE); fip.close();
out.close(); llj.freeMemory();
}
}
InputStream in = request.getInputStream();