19. april 2006 - 09:48 
												Der er
									10  kommentarer													og 					1  løsning									 
									
		 
		
			
Udskriv exception til JTextArea 
			Hej Eksperter, Hvordan skriver man hele Exception stacktracet ud til f.eks et JTextArea?
					
		
	 
Annonceindlæg tema 
 
Forsvar & beredskab 
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
 
 
	
		
								
					
				19. april 2006 - 09:53  
				#1 
			 				 
						
		 
		
			jTextArea.setText(exeception.printStackTrace()) virker det ikke? du skal selvfølgelig ændre på navne osv... kan ikke huske om printstacktrace er void.. er den det virker det selvfølgelig ikke
		
		
	 
	
		
								
					
				19. april 2006 - 09:53  
				#2 
						
		 
		
			printStackTrace er en void metode!
		
		
	 
	
		
								
					
				19. april 2006 - 09:55  
				#3 
						
		 
		
			StackTraceElement[] elements = exception.getStackTrace(); for (StackTraceElement elem : elements)    textArea.append (elem.toString() + "\n");
		
		
	 
	
		
								
					
				19. april 2006 - 09:55  
				#4 
						
		 
		
			Eller måske bare: textArea.setText (exception.toString());
		
		
	 
	
		
								
					
				19. april 2006 - 09:56  
				#5 
			 				 
						
		 
		
			mikkelbm >> Det var også hvad jeg havde på fornemmelsen:)
		
		
	 
	
	
	
		
								
					
				19. april 2006 - 09:57  
				#6 
						
		 
		
		
	 
	
		
								
					
				19. april 2006 - 10:08  
				#7 
						
		 
		
			Dette  String detail =""; StackTraceElement[] elements = null; elements = throwable.getStackTrace();     for(int i = 0; i< elements.length;i++)     {         detail = detail + "\n" + elements[i].toString();     }      System.out.println(detail); giver ikke det samme resultat som dette throwable.printStackTrace(); btw køre det på 1.4 ikke 1.5
		
		
	 
	
		
								
					
				20. april 2006 - 02:09  
				#8 
			 				 
						
		 
		
			package april; import java.io.*; public class StackTrace {     public static void main(String[] args) {         try {             throw new Exception("Test1");         } catch (Exception e) {             e.printStackTrace();         }         try {             throw new Exception("Test2");         } catch (Exception e) {             System.err.println(e.getClass().getName() + ": " + e.getMessage());             StackTraceElement[] elm = e.getStackTrace();             for(int i = 0; i < elm.length; i++)                 {                 System.err.println("        at " + elm[i]);             }         }         try {             throw new Exception("Test3");         } catch (Exception e) {             StringWriter sw = new StringWriter();             e.printStackTrace(new PrintWriter(sw));             System.err.println(sw.getBuffer().toString());         }     } }
		
		
	 
	
		
								
					
				21. april 2006 - 09:32  
				#9 
						
		 
		
			Dette virker: StringWriter sw = new StringWriter(); throwable.printStackTrace(new PrintWriter(sw));             detail = sw.getBuffer().toString(); Smid et svar Arne_v og tak
		
		
	 
	
		
								
					
				22. april 2006 - 05:33  
				#10 
			 				 
						
		 
		
			OK men som Test2 antyder bør man også med lidt arbejde kunne få få den rigtige test med .getStackTrace()
		
		
	 
	
		
								
					
				22. april 2006 - 10:51  
				#11 
						
		 
		
			Ja det er da ikke for at snyde nogen men din løsning var den hurtigste at bruge.
		
		
	 
	
		
	
		
		
		
			
			Kurser inden for grundlæggende programmering