欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

寫入GPS信息到j(luò)peg格式的圖片中ExifInterface類的使用 - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 技術(shù)分享 >

寫入GPS信息到j(luò)peg格式的圖片中ExifInterface類的使用

發(fā)表時(shí)間:2020-10-19

發(fā)布人:葵宇科技

瀏覽次數(shù):156


寫入GPS信息到j(luò)peg格式的圖片中 ExifInterface類的應(yīng)用


 Jpge格式是圖片緊縮格式的一種,jpg就屬于這個(gè)一一種;我們?nèi)珥氁獙ps信息寫入到圖片中本身是比較簡(jiǎn)單的,獲取圖片句柄ExifInterface就可以了;然則我在做的過程中碰著了幾個(gè)問題,解決之后便推敲將這一塊寫出來供大年夜家參考。
 
寫入GPS信息到j(luò)peg格式的圖片一共三個(gè)步調(diào),獲取句柄,寫入信息,驗(yàn)證寫入信息

第一步:獲取句柄


// 獲取圖片前綴
           ExifInterfaceexif = newExifInterface(filePath);

這里關(guān)鍵的一點(diǎn)是filepath這個(gè)參數(shù),這是文件的絕對(duì)路徑加文件名(肯定是包含文件的后綴名的?。?BR>

第二步:寫入信息


// 寫入經(jīng)度信息
           exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE,
                  this.gpsInfoConvert(jingdu));
           exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE_REF,
                  jingdu> 0 ? "E": "W");
//         寫入緯度信息
           exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE,
                  gpsInfoConvert(weidu));
           exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE_REF,
                  weidu> 0 ? "N": "S");
//         履行保存
           exif.saveAttributes();
膳綾擎的代碼中jingdu和weidu都是已經(jīng)申明并獲得復(fù)制的變量,代表經(jīng)緯度;最后的履行保存必定要操作,不然信息可能寫入不成功。

第三步:驗(yàn)證寫入信息


ExifInterface exiftest = null;
           exiftest= newExifInterface(filePath);
           this.printMessage("寫完后的校驗(yàn):", exiftest);
這個(gè)printMessage函數(shù)是自定義的信息輸出函數(shù),旨在讀出圖片中的GPS信息,以驗(yàn)證。
 
private void printMessage(String tag, ExifInterface e) {
		System.out.println(tag + "\n"
				+ e.getAttribute(ExifInterface.TAG_GPS_LATITUDE) + "\n"
				+ e.getAttribute(ExifInterface.TAG_GPS_LONGITUDE) + "\n"
				+ e.getAttribute(ExifInterface.TAG_GPS_PROCESSING_METHOD)
				+ "\n" + e.getAttribute(ExifInterface.TAG_IMAGE_LENGTH) + "\n"
				+ e.getAttribute(ExifInterface.TAG_IMAGE_WIDTH));

【附注】


1、 膳綾擎比較重要的處所有兩處,第一是new ExifInterface(filePath)這里的參數(shù)是指的絕對(duì)路徑加文件名,ExifInterface這個(gè)類其實(shí)不是飾辭盡管它這么寫了;其次即使你寫的路徑紕謬,它也不會(huì)報(bào)錯(cuò)甚至提示,這就導(dǎo)致路徑紕謬不易發(fā)明,我當(dāng)時(shí)就犯了這種缺點(diǎn),沒有及時(shí)發(fā)明浪費(fèi)了時(shí)光
2、  必定要記得履行保存;寫入的經(jīng)緯度信息直接精曉過百度地圖獲得的經(jīng)緯度信息寫進(jìn)去會(huì)有問題,格式紕謬,必須經(jīng)由gpsInforConvert(double aa)函數(shù)進(jìn)行轉(zhuǎn)換,這個(gè)函數(shù)也是我自定義的,發(fā)明格式紕謬對(duì)比標(biāo)準(zhǔn)格式寫的。
格式轉(zhuǎn)換函數(shù):
private String gpsInfoConvert(double gpsInfo) {
       gpsInfo= Math.abs(gpsInfo);
       Stringdms = Location.convert(gpsInfo, Location.FORMAT_SECONDS);
       String[]splits = dms.split(":");
       String[]secnds = (splits[2]).split("\\.");
       Stringseconds;
       if (secnds.length == 0) {
           seconds= splits[2];
       }else{
           seconds= secnds[0];
       }
       return splits[0] + "/1," + splits[1] + "/1," + seconds + "/1";
}

源碼下載
(因?yàn)閷?shí)例中須要獲取GPS信息,是以源碼中已經(jīng)應(yīng)用了百度地圖的sdk,輸入本身的key之后便可以直接應(yīng)用獲取GPS信息寫入到j(luò)peg圖片中)
 

相關(guān)案例查看更多