Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
package com.cesams.twogetskills.library;
import java.io.File;
import java.text.DateFormat;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.regex.Pattern;
import android.content.Context;
import android.os.Environment;
public class Functions {
private static Float scale;
/*
private static SimpleDateFormat sdfHora24 = new SimpleDateFormat(Constants.FORMATO_HORA_24, Locale.getDefault());
private static SimpleDateFormat sdfHora12 = new SimpleDateFormat(Constants.FORMATO_HORA_12, Locale.getDefault());
private static SimpleDateFormat sdfFechaHora24 = new SimpleDateFormat(Constants.FORMATO_FECHA_HORA_24, Locale.getDefault());
private static SimpleDateFormat sdfFechaHora12 = new SimpleDateFormat(Constants.FORMATO_FECHA_HORA_12, Locale.getDefault());
private static SimpleDateFormat sdfFechaYMD = new SimpleDateFormat(Constants.FORMATO_FECHA_YMD, Locale.getDefault());
private static SimpleDateFormat sdfFechaDMY = new SimpleDateFormat(Constants.FORMATO_FECHA_DMY, Locale.getDefault());
private static DecimalFormat formatMonto2Decimales = new DecimalFormat("#,##0.00");
private static DecimalFormat formatEntero = new DecimalFormat("#,##0");
*/
private Functions() {
// TODO Auto-generated constructor stub
}
/*
public static Date parseFechaHora24(String timestamp24Horas) {
try {
return sdfFechaHora24.parse(timestamp24Horas);
} catch (ParseException e) {
Calendar c = Calendar.getInstance(Locale.getDefault());
return c.getTime();
}
}
public static Date parseFechaHora12(String timestamp12Horas) {
try {
return sdfFechaHora12.parse(timestamp12Horas);
} catch (ParseException e) {
Calendar c = Calendar.getInstance(Locale.getDefault());
return c.getTime();
}
}
public static Date parseFechaYMD(String fechaYMD) {
try {
return sdfFechaYMD.parse(fechaYMD);
} catch (ParseException e) {
Calendar c = Calendar.getInstance(Locale.getDefault());
return c.getTime();
}
}
public static Date parseFechaDMY(String fechaDMY) {
try {
return sdfFechaDMY.parse(fechaDMY);
} catch (ParseException e) {
Calendar c = Calendar.getInstance(Locale.getDefault());
return c.getTime();
}
}
public static Date parseHora12(String fechaDMY) {
try {
return sdfHora12.parse(fechaDMY);
} catch (ParseException e) {
Calendar c = Calendar.getInstance(Locale.getDefault());
return c.getTime();
}
}
public static Date parseHora24(String fechaDMY) {
try {
return sdfHora24.parse(fechaDMY);
} catch (ParseException e) {
Calendar c = Calendar.getInstance(Locale.getDefault());
return c.getTime();
}
}
public static String formatHora12(Date d) {
return sdfHora12.format(d);
}
public static String formatHora24(Date d) {
return sdfHora24.format(d);
}
public static String formatFechaHora24(Date d) {
return sdfFechaHora24.format(d);
}
public static String formatFechaHora12(Date d) {
return sdfFechaHora12.format(d);
}
public static String formatFechaYMD(Date d) {
return sdfFechaYMD.format(d);
}
public static String formatFechaDMY(Date d) {
return sdfFechaDMY.format(d);
}
public static String formatMonto2Decimales(float monto) {
return formatMonto2Decimales.format(monto);
}
public static String formatEntero(long monto) {
return formatEntero.format(monto);
}
*/
static Hashtable<String, String> html_specialchars_table = new Hashtable<String, String>();
static {
html_specialchars_table.put("<","<");
html_specialchars_table.put(">",">");
html_specialchars_table.put("&","&");
html_specialchars_table.put(""","\"");
}
public static String formatTimeLineAddedOn(Date date)
{
Calendar cal = Calendar.getInstance();
cal.setTime(date);
String s = "";
int month = cal.get(Calendar.MONTH);
if(month == Calendar.JANUARY) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Ene " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.FEBRUARY) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Feb " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.MARCH) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Mar " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.APRIL) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Abr " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.MAY) {
s = cal.get(Calendar.DAY_OF_MONTH) + " May " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.JUNE) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Jun " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.JULY) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Jul " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.AUGUST) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Ago " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.SEPTEMBER) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Sep " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.OCTOBER) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Oct " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.NOVEMBER) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Nov " + cal.get(Calendar.YEAR);
}
else if(month == Calendar.DECEMBER) {
s = cal.get(Calendar.DAY_OF_MONTH) + " Dic " + cal.get(Calendar.YEAR);
}
return s;
}
public static String trimNull(String s) {
return s == null || s.equals("null") ? "" : s.trim();
}
public static boolean passwordStrengthCheck(String s) {
//String regexp = "\\d{1,2}/\\d{1,2}/\\d{4}";
//String regexp = "^(?=.*\\d+)(?=.*[a-z])(?=.*[A-Z])[0-9a-zA-Z]{6,16}$";
String regexp = "^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=[#?!@$^x%x*-]{0,}).{6,16}$";
return Pattern.matches(regexp, s);
}
public static int Numero2Int(String numero)
{
if(numero == null) {
return 0;
}
StringBuffer sb = new StringBuffer();
boolean primero = true;
for (int i = 0; i < numero.length(); i++)
{
if ((numero.substring(i, i + 1) == "0") && (primero))
{
continue;
}
primero = false;
sb.append(numero.substring(i, i + 1));
}
if (sb.length() == 0)
{
return 0;
}
else
{
return Integer.parseInt(sb.toString().trim());
}
}
public static long Numero2Long(String numero)
{
if(numero == null) {
return 0;
}
StringBuffer sb = new StringBuffer();
boolean primero = true;
for (int i = 0; i < numero.length(); i++)
{
if ((numero.substring(i, i + 1) == "0") && (primero))
{
continue;
}
primero = false;
sb.append(numero.substring(i, i + 1));
}
if (sb.length() == 0)
{
return 0;
}
else
{
return Long.parseLong(sb.toString().trim());
}
}
public static float Numero2Float(String numero) {
if(numero == null) {
return 0;
}
StringBuffer sb = new StringBuffer();
boolean primero = true;
for (int i = 0; i < numero.length(); i++)
{
if ((numero.substring(i, i + 1) == "0") && (primero))
{
continue;
}
primero = false;
sb.append(numero.substring(i, i + 1));
}
if (sb.length() == 0)
{
return 0;
}
else
{
return Float.parseFloat(sb.toString().trim());
}
}
public static String Long2Numero(long i, int longitud) {
String s = String.valueOf(i);
if (s.length() < longitud)
{
StringBuffer sb = new StringBuffer();
int max = longitud - s.length();
for (i = 0; i < max; i++)
{
sb.append('0');
}
sb.append(s);
return sb.toString();
}
else
{
return s;
}
}
public static String Int2Numero(int i, int longitud) {
String s = String.valueOf(i);
if (s.length() < longitud)
{
StringBuffer sb = new StringBuffer();
int max = longitud - s.length();
for (i = 0; i < max; i++)
{
sb.append('0');
}
sb.append(s);
return sb.toString();
}
else
{
return s;
}
}
public static int countCharacter(String str, char c)
{
if (str == null) {
return 0;
}
else
{
int counter = 0;
for (int i = 0; i < str.length(); i++)
{
if (c == str.charAt(i))
{
counter++;
}
}
return counter;
}
}
public static int hexToInt(String hex)
{
return Integer.parseInt(hex, 16);
}
public static String padRight(String s, int n, char c)
{
return padRight(s, n, c, true);
}
public static String padRight(String s, int n)
{
return padRight(s, n, ' ', true);
}
public static String padRight(String s, int n, char c, boolean hacerTrim)
{
if(hacerTrim)
{
s = s.trim();
}
if (s.length() > n)
{
return s.substring(0, n);
}
else
{
return repetirCaracter(c, n - s.length()) + s;
}
}
public static String padLeftImpresion(String s, int n)
{
return padLeft(s, n, ' ', false);
}
public static String padLeft(String s, int n)
{
return padLeft(s, n, ' ', true);
}
public static String padLeft(String s, int n, char c, boolean hacerTrim)
{
if(hacerTrim)
{
s = s.trim();
}
if (s.length() > n)
{
return s.substring(0, n);
}
else
{
return s + repetirCaracter(c, n - s.length());
}
}
public static String padCenter(String s, int n, char c)
{
return padCenter(s, n, c, true);
}
public static String padCenter(String s, int n)
{
return padCenter(s, n, ' ', true);
}
public static String padCenter(String s, int n, char c, boolean hacerTrim)
{
if(hacerTrim)
{
s = s.trim();
}
if (s.length() > n) {
return s.substring(0, n - 1);
}
else
{
int l = (n - s.length()) / 2;
StringBuffer sb = new StringBuffer();
for (int i = 0; i < l; i++)
{
sb.append(c);
}
sb.append(s);
if (n > s.length() + l * 2)
{
l++;
}
for (int i = 0; i < l; i++)
{
sb.append(c);
}
return sb.toString();
}
}
public static String repetirCaracter(char c, int cantidad)
{
StringBuffer sb = new StringBuffer();
for (int i = 1; i <= cantidad; i++)
{
sb.append(c);
}
return sb.toString();
}
public static boolean validarFecha(int dia, int mes, int ano)
{
if(dia < 1 || mes < 1 || mes > 12 || ano == 0) {
return false;
}
else
{
if(mes == 2)
{
if(esBisiesto(ano))
{
if( dia > 29 ){
return false;
}
else {
return true;
}
}
else
{
if (dia > 28)
{
return false;
} else {
return true;
}
}
}
else
{
if(mes == 4 || mes == 6 || mes == 9 || mes == 11)
{
return dia <= 30;
} else {
return dia <= 31;
}
}
}
}
public static boolean esBisiesto(int ano)
{
return((ano%4 == 0 && ano % 100 !=0)|(ano % 400==0));
}
public static String removerCaracteresEspeciales(String input)
{
String original = "áàäéèëíìïóòöúùuñÁÀÄÉÈËÍÌÏÓÒÖÚÙÜÑçÇ";
String ascii = "aaaeeeiiiooouuunAAAEEEIIIOOOUUUNcC";
String output = input;
for (int i=0; i<original.length(); i++) {
output = output.replace(original.charAt(i), ascii.charAt(i));
}
return output;
}//remove1
public static int diferenciasDeFechas(Date fechaInicial, Date fechaFinal)
{
DateFormat df = DateFormat.getDateInstance(DateFormat.MEDIUM);
String fechaInicioString = df.format(fechaInicial);
try {
fechaInicial = df.parse(fechaInicioString);
} catch (ParseException ex) {
}
String fechaFinalString = df.format(fechaFinal);
try {
fechaFinal = df.parse(fechaFinalString);
} catch (ParseException ex) {
}
long fechaInicialMs = fechaInicial.getTime();
long fechaFinalMs = fechaFinal.getTime();
long diferencia = fechaFinalMs - fechaInicialMs;
double dias = Math.floor(diferencia / (1000 * 60 * 60 * 24));
return ((int) dias);
}
public static String htmlSpecialCharsDecode(String s)
{
Enumeration<String> en = html_specialchars_table.keys();
while(en.hasMoreElements()){
String key = (String)en.nextElement();
String val = (String)html_specialchars_table.get(key);
s = s.replaceAll(key, val);
}
return s;
}
public static int dpToPixel(int dp, Context context) {
if (scale == null) {
scale = context.getResources().getDisplayMetrics().density;
}
return (int) ((float) dp * scale);
}
}