Pregunta

He estado trabajando en un programa de tableview y tengo una función que procesa varios datos de preferencias del usuario, y los datos básicos. el programa analiza estas cosas y devuelve una dirección URL. aquí está el código:

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
 NSString *serverAdress = [prefs stringForKey:@"serverAdress"];
 serverAdress = [serverAdress stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
 [dateFormatter setDateFormat:@"dd.MM.yyyy"];

 NSDateFormatter *dateFormatter2 = [[NSDateFormatter alloc] init];
 [dateFormatter2 setDateFormat:@"dd.MM.yyyy HH:mm"];

 NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];

 NSString *dateTimeString = [NSString stringWithFormat:@"%@ %@",dateString,[dashboardParameters attribute1]];

 NSTimeInterval dayInterval = [[dashboardParameters attribute2] intValue]*60*60*(-1);
 NSDate *date2 = [[dateFormatter2 dateFromString:dateTimeString] addTimeInterval:dayInterval];
 NSString *urlString = 
 [NSMutableString stringWithFormat:@"%@/webservices/service1.asmx/getHourlySales2?tarih2=%@&tarih1=%@&salesType=%@",
  serverAdress,
  dateTimeString,
  [dateFormatter2 stringFromDate:date2],
  [dashboardParameters itemOrder]
  ];
 urlString = [urlString stringByReplacingOccurrencesOfString:@" " withString:@"%20"]; 
 return urlString;

Todo funciona muy bien, no tengo ningún problema en la recuperación de datos. Pero cuando ejecuto el código, me sale este registro de salida:

// server.dyndns.org/webservices/service1.asmx/getHourlySales2?tarih2=20.01.2011%2016:00&tarih1=19.01.2011%2016:00&salesType=Hepsi/webservices/service1.asmx/getHourlySales2?tarih2=21.01 0,2011% 2022: 00 y tarih1 = 21.01.2011% 2011: 00 y salesType = Hepsi

tiene que ser

// server.dyndns.org/webservices/service1.asmx/getHourlySales2?tarih2=20.01.2011%2016:00&tarih1=19.01.2011%2016:00&salesType=Hepsi

Pero extrañamente el programa añade

/webservices/service1.asmx/getHourlySales2?tarih2=21.01.2011%2022:00&tarih1=21.01.2011%2011:00&salesType=Hepsi

por sí mismo después de que el procesamiento normal.

También otra cosa importante es que el código se ejecuta normalmente cuando quito

NSString *serverAdress = [prefs stringForKey:@"serverAdress"] desde el código y entrar en serveradress manualmente.

Plase ayuda, todo en el programa funciona bien, pero im pegado con este problema.

Gracias por ayudarnos.

¿Fue útil?

Solución

Así que lo que está en serverAdress antes se agrega a urlString. Parece como si serverAdress contiene '//server.dyndns.org/webservices/service1.asmx/getHourlySales2?tarih2=20.01.2011%2016:00&tarih1=19.01.2011%2016:00&salesType=Hepsi'

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top