คำถามติดแท็ก exception

ข้อยกเว้นเป็นเงื่อนไขผิดปกติที่ต้องมีการเบี่ยงเบนจากการไหลปกติของโปรแกรม โดยปกติข้อยกเว้นไม่ควรส่งผลให้เกิดความล้มเหลวทั้งหมด แต่จะเข้าร่วมโดยตัวจัดการข้อยกเว้น การจัดการข้อยกเว้นเป็นโครงสร้างที่มีอยู่แล้วในหลายภาษาโปรแกรม โดยปกติแล้วข้อยกเว้นจะถูกจัดการโดยการคลายสแต็กดังนั้นจึงย้อนกลับไปยังสถานะที่กำหนดนอกขอบเขตของข้อยกเว้นจากนั้นจึงเรียกใช้ตัวจัดการบล็อกหรือรูทีน

6
ฉันจะอ่านไฟล์ข้อความใน Android ได้อย่างไร
ฉันต้องการอ่านข้อความจากไฟล์ข้อความ ในโค้ดด้านล่างจะมีข้อยกเว้นเกิดขึ้น (ซึ่งหมายความว่าจะไปที่catchบล็อก) ฉันใส่ไฟล์ข้อความในโฟลเดอร์ของแอปพลิเคชัน ฉันควรวางไฟล์ข้อความนี้ไว้ที่ไหน (mani.txt) เพื่อให้อ่านได้อย่างถูกต้อง try { InputStream instream = openFileInput("E:\\test\\src\\com\\test\\mani.txt"); if (instream != null) { InputStreamReader inputreader = new InputStreamReader(instream); BufferedReader buffreader = new BufferedReader(inputreader); String line,line1 = ""; try { while ((line = buffreader.readLine()) != null) line1+=line; }catch (Exception e) { e.printStackTrace(); } } } catch …

10
ลอง / จับกับโยนข้อยกเว้น
คำสั่งรหัสเหล่านี้เทียบเท่าหรือไม่ มีความแตกต่างกันหรือไม่? private void calculateArea() throws Exception { ....do something } private void calculateArea() { try { ....do something } catch (Exception e) { showException(e); } }
117 java  exception 

12
PHP: ข้อยกเว้นและข้อผิดพลาด?
บางทีฉันอาจจะพลาดที่ไหนสักแห่งในคู่มือ PHP แต่อะไรคือความแตกต่างระหว่างข้อผิดพลาดและข้อยกเว้น? ความแตกต่างเดียวที่ฉันเห็นคือข้อผิดพลาดและข้อยกเว้นจะได้รับการจัดการที่แตกต่างกัน แต่อะไรทำให้เกิดข้อยกเว้นและอะไรทำให้เกิดข้อผิดพลาด?


4
เนื่องจากบล็อกสุดท้ายไม่ได้รับการหุ้มอย่างถูกต้อง
ฉันกำลังพยายามใช้อัลกอริทึมการเข้ารหัสที่ใช้รหัสผ่าน แต่ฉันได้รับข้อยกเว้นนี้: javax.crypto.BadPaddingException: เนื่องจากบล็อกสุดท้ายไม่ได้รับการหุ้มอย่างถูกต้อง ปัญหาอาจเกิดจากอะไร? นี่คือรหัสของฉัน: public class PasswordCrypter { private Key key; public PasswordCrypter(String password) { try{ KeyGenerator generator; generator = KeyGenerator.getInstance("DES"); SecureRandom sec = new SecureRandom(password.getBytes()); generator.init(sec); key = generator.generateKey(); } catch (Exception e) { e.printStackTrace(); } } public byte[] encrypt(byte[] array) throws CrypterException { try{ Cipher cipher …

5
ลำดับไม่มีองค์ประกอบที่ตรงกัน
ฉันมีแอปพลิเคชัน asp.net ซึ่งฉันใช้ linq สำหรับการจัดการข้อมูล ขณะทำงานฉันได้รับข้อยกเว้น "ลำดับไม่มีองค์ประกอบที่ตรงกัน" if (_lstAcl.Documents.Count > 0) { for (i = 0; i <= _lstAcl.Documents.Count - 1; i++) { string id = _lstAcl.Documents[i].ID.ToString(); var documentRow = _dsACL.Documents.First(o => o.ID == id); if (documentRow !=null) { _lstAcl.Documents[i].Read = documentRow.Read; _lstAcl.Documents[i].ReadRule = documentRow.ReadRule; _lstAcl.Documents[i].Create= documentRow.Create; _lstAcl.Documents[i].CreateRule = documentRow.CreateRule; …
113 c#  linq  exception 

5
โยน std ใหม่ :: ข้อยกเว้นเทียบกับการโยน std :: ข้อยกเว้น
ในขณะที่ดูรหัสบางอย่างฉันสะดุดเข้า: throw /*-->*/new std::exception ("//... และฉันคิดเสมอว่าคุณไม่ต้องการ / คุณไม่ควรใช้newที่นี่ วิธีที่ถูกต้องคืออะไรตกลงทั้งคู่ถ้าเป็นเช่นนั้นมีความแตกต่างกันอย่างไร BTW จากสิ่งที่ฉันสามารถมองเห็นขณะที่ "grepping" กับ PowerShell เพิ่ม libs throw newไม่เคยใช้ PS ยังผมพบว่าบางรหัส CLI throw gcnewที่ใช้ ไม่เป็นไร?
113 c++  exception 

10
หน้าข้อผิดพลาดที่กำหนดเอง ASP.NET - Server.GetLastError () เป็นโมฆะ
ฉันมีหน้าแสดงข้อผิดพลาดที่กำหนดเองสำหรับแอปพลิเคชันของฉัน: <customErrors mode="On" defaultRedirect="~/errors/GeneralError.aspx" /> ใน Global.asax, Application_Error () รหัสต่อไปนี้จะทำงานเพื่อรับรายละเอียดข้อยกเว้น: Exception ex = Server.GetLastError(); if (ex != null) { if (ex.GetBaseException() != null) ex = ex.GetBaseException(); } เมื่อถึงเวลาที่ฉันไปที่หน้าข้อผิดพลาดของฉัน (~ / error / GeneralError.aspx.cs) Server.GetLastError () เป็นโมฆะ มีวิธีใดบ้างที่ฉันจะได้รับรายละเอียดข้อยกเว้นในหน้าข้อผิดพลาดแทนที่จะเป็นใน Global.asax.cs ASP.NET 3.5 บน Vista / IIS7

4
จะเพิ่มข้อยกเว้นอีกครั้งในบล็อก try / except แบบซ้อนได้อย่างไร
ฉันรู้ว่าถ้าฉันต้องการเพิ่มข้อยกเว้นอีกครั้งฉันใช้ง่ายๆraiseโดยไม่มีข้อโต้แย้งในexceptบล็อกที่เกี่ยวข้อง แต่ได้รับการแสดงออกที่ซ้อนกันเช่น try: something() except SomeError as e: try: plan_B() except AlsoFailsError: raise e # I'd like to raise the SomeError as if plan_B() # didn't raise the AlsoFailsError ฉันจะเพิ่มอีกครั้งSomeErrorโดยไม่ทำลายสแต็กเทรซได้อย่างไร เพียงอย่างเดียวจะในกรณีนี้อีกครั้งเพิ่มมากขึ้นล่าสุดraise AlsoFailsErrorหรือฉันจะ refactor รหัสของฉันเพื่อหลีกเลี่ยงปัญหานี้ได้อย่างไร

13
android View ไม่ได้แนบกับตัวจัดการหน้าต่าง
ฉันมีข้อยกเว้นบางประการดังต่อไปนี้: java.lang.IllegalArgumentException: View not attached to window manager at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:355) at android.view.WindowManagerImpl.updateViewLayout(WindowManagerImpl.java:191) at android.view.Window$LocalWindowManager.updateViewLayout(Window.java:428) at android.app.Dialog.onWindowAttributesChanged(Dialog.java:596) at android.view.Window.setDefaultWindowFormat(Window.java:1013) at com.android.internal.policy.impl.PhoneWindow.access$700(PhoneWindow.java:86) at com.android.internal.policy.impl.PhoneWindow$DecorView.drawableChanged(PhoneWindow.java:1951) at com.android.internal.policy.impl.PhoneWindow$DecorView.fitSystemWindows(PhoneWindow.java:1889) at android.view.ViewRoot.performTraversals(ViewRoot.java:727) at android.view.ViewRoot.handleMessage(ViewRoot.java:1633) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:4338) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:521) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) at dalvik.system.NativeStart.main(Native Method) ฉันได้ googled และเห็นว่ามันเกี่ยวข้องกับป๊อปอัปและการพลิกหน้าจอ แต่ไม่มีการอ้างอิงถึงรหัสของฉัน …
111 android  exception 

8
แนวทางปฏิบัติที่ดีที่สุด: ทิ้งข้อยกเว้นจากคุณสมบัติ
เมื่อใดจึงเหมาะสมที่จะโยนข้อยกเว้นจากภายในคุณสมบัติ getter หรือ setter? เมื่อใดไม่เหมาะสม ทำไม? ลิงก์ไปยังเอกสารภายนอกในหัวข้อนี้จะเป็นประโยชน์ ... Google เปิดเผยเล็กน้อยอย่างน่าประหลาดใจ
111 c#  .net  exception  properties 

3
ทำไม writeObject ถึงโยน java.io.NotSerializableException และฉันจะแก้ไขได้อย่างไร
ฉันมีข้อยกเว้นนี้และฉันไม่เข้าใจว่าทำไมมันถึงถูกโยนทิ้งหรือฉันควรจัดการอย่างไร try { os.writeObject(element); } catch (IOException e) { e.printStackTrace(); } ที่ไหนelementเป็นTransformGroupที่มีอื่น ๆ บางTransformGroupsตัวอย่างของ Atom คลาส: public class Atom extends Group implements Serializable{ float pozX,pozY; Group group= new Group(); Color3f blue = new Color3f(new Color(255)); Color3f black = new Color3f(new Color(0)); Sphere AtSph=new Sphere(); public Atom(final float WEIGHT, final int …

7
ข้อยกเว้นทำงานอย่างไร (เบื้องหลัง) ใน c ++
ฉันมักจะเห็นคนพูดว่าข้อยกเว้นนั้นช้า แต่ฉันไม่เคยเห็นข้อพิสูจน์ใด ๆ ดังนั้นแทนที่จะถามว่าพวกเขาเป็นอย่างไรฉันจะถามว่าข้อยกเว้นทำงานอย่างไรในเบื้องหลังดังนั้นฉันจึงสามารถตัดสินใจได้ว่าจะใช้เมื่อใดและจะช้าหรือไม่ จากสิ่งที่ฉันรู้ข้อยกเว้นจะเหมือนกับการส่งคืนหลายครั้งยกเว้นว่าจะตรวจสอบหลังจากการส่งคืนแต่ละครั้งว่าจำเป็นต้องทำอย่างอื่นหรือหยุด จะตรวจสอบได้อย่างไรว่าจะหยุดกลับเมื่อใด ฉันเดาว่ามีกองที่สองที่เก็บประเภทของข้อยกเว้นและตำแหน่งสแต็กจากนั้นจะส่งคืนจนกว่าจะถึงที่นั่น ฉันคาดเดาด้วยว่าครั้งเดียวที่สัมผัสกองที่สองนี้คือการโยนและในการลอง / จับแต่ละครั้ง AFAICT การใช้ลักษณะการทำงานที่คล้ายกันกับรหัสส่งคืนจะใช้เวลาเท่ากัน แต่ทั้งหมดนี้เป็นเพียงการคาดเดาดังนั้นฉันจึงอยากรู้ว่าเกิดอะไรขึ้น ข้อยกเว้นทำงานอย่างไร


15
Image.Save (.. ) แสดงข้อยกเว้น GDI + เนื่องจากสตรีมหน่วยความจำถูกปิด
ฉันมีข้อมูลไบนารีที่ต้องการบันทึกเป็นรูปภาพ เมื่อฉันพยายามบันทึกภาพมันจะเกิดข้อยกเว้นหากสตรีมหน่วยความจำที่ใช้สร้างภาพถูกปิดก่อนบันทึก เหตุผลที่ฉันทำเช่นนี้เพราะฉันสร้างภาพแบบไดนามิกและด้วยเหตุนี้ .. ฉันจำเป็นต้องใช้สตรีมหน่วยความจำ นี่คือรหัส: [TestMethod] public void TestMethod1() { // Grab the binary data. byte[] data = File.ReadAllBytes("Chick.jpg"); // Read in the data but do not close, before using the stream. Stream originalBinaryDataStream = new MemoryStream(data); Bitmap image = new Bitmap(originalBinaryDataStream); image.Save(@"c:\test.jpg"); originalBinaryDataStream.Dispose(); // Now lets use a …
109 c#  image  exception  gdi+ 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.