Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class NetUtils {
- private static Context context = null;
- public static void setContext(Context context)
- {
- NetUtils.context = context;
- }
- public String get(String url, int cache) {
- String result = null;
- Log.d("NetUtils get",":"+url);
- String md5 = Md5Util.md5(url);
- File casheDir = AndroidApplication.cacheDir;
- File f = null;
- if (casheDir!=null && cache>0) {
- Log.d("cashe", casheDir.getAbsolutePath());
- f = new File(casheDir, md5);
- final long time = new Date().getTime() / 1000;
- if (f.exists()) {
- if ((f.lastModified()/1000+cache)>time) {
- result = readFile(f.getAbsolutePath());
- if (result.equals("")) {
- f=null;
- }
- else {
- return result;
- }
- }
- }
- }
- HttpGet getRequest = new HttpGet(url);
- try {
- HttpResponse getResponse = AndroidApplication.getClient().execute(getRequest);
- final int statusCode = getResponse.getStatusLine().getStatusCode();
- if (statusCode != HttpStatus.SC_OK) {
- result = "Error:"+statusCode;
- }
- HttpEntity getResponseEntity = getResponse.getEntity();
- if (getResponseEntity != null && statusCode == HttpStatus.SC_OK) {
- //result = EntityUtils.toString(getResponseEntity);
- InputStream is = getResponseEntity.getContent();
- result = convertStreamToString(is,f);
- getResponseEntity = null;
- if (f!=null) {
- BufferedOutputStream os = new BufferedOutputStream(new FileOutputStream(f));
- os.write(result.getBytes());
- os.flush();
- os.close();
- }
- }
- }
- catch (IOException e) {
- getRequest.abort();
- if (f!=null) {
- if (f.exists()) {
- Log.d("NetUtils IOException", f.getAbsolutePath());
- return readFile(f.getAbsolutePath());
- }
- }
- result = "Error:"+e.toString();
- }
- //Log.d("NetUtils result:",result.substring(0, Math.min(result.length(), 150)));
- return result;
- }
- private String readFile(String filePath) {
- StringBuffer fileData = new StringBuffer(0);
- try {
- BufferedReader reader = new BufferedReader(new FileReader(filePath));
- char[] buf = new char[16192];
- int numRead=0;
- while((numRead=reader.read(buf)) != -1){
- fileData.append(buf, 0, numRead);
- }
- Log.d("FILEData", fileData.toString());
- reader.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- return fileData.toString();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement