For문에서 어디에 중단점 및 조건을 걸어야 원하는 상황이 될까요?

안녕하세요! 아래 코드에서 RETURN 되는 dt값을 확인하고 싶은데 이걸 거치지 않고 넘어갑니다…
(엑셀에서 들어온 scv값을 dt에 담아서 저장해야 하는 코드 중 dataTable로 변환하려는 상황)
그래서 중간에 for문 안에서 rowsToRead가 1068번째, cellCount가 28번째인 때에 디버거 조건을 걸어서 넣고 싶은데 어디에 어떻게 조건을 걸어야할 지 찾아보아도 모르겠어서 문의 남깁니다.

        int cellCount = worksheet.Cells[1, 1].Value.ToString().Split(',').Count();
        int totalRowCount = worksheet.Dimension.End.Row;
        int rowsToRead = 0;

        for (int i = 1; i < totalRowCount; i++)
        {
            var wsValue = worksheet.Cells[i, 1];
            if (wsValue.Text == "" || wsValue.Text.Trim() == ",,,,,,,,,,,,,,,,,,,,,,,,,,,") break;
            // 28개    
            rowsToRead = i;
        }
        //rowsToRead : 1069개, cellCount : 28개
        object[,] valueArray = new object[rowsToRead, cellCount];
        for (int i = 0; i < rowsToRead; i++)
        {
            int startRow = (i + 1);   //1번째줄:컬럼명시작      
            string filedText = worksheet.Cells[startRow, 1].Value.ToString();
            string[] arrFieldText = SplitCSV(filedText);
            for (int j = 0; j < arrFieldText.Length; j++)
            {
                valueArray[i, j] = arrFieldText[j].ToString();
            }
        }
        //var iii = valueArray[78, 2];
        dt = ProcessObjects(valueArray);
        return dt;

실패한 이미지 첨부

image

중단점에서 for문에 원하는 조건 어디에 설정하면 될지 도움 부탁드립니다…!! ㅠ-ㅠ

j for문에서 조건 비교쪽에 브포 걸고 조건을 i==1068, j==28로 걸어도 안 되는 건가요?? 스샷으로 보면 선언문에 브포가 걸린 거 같아요.
근데 for문 안에 거신 거에도 브레이크가 안 걸린다면 arrFieldText의 길이가 28까지 갈 수 있는 게 맞는 건가요??

arrFieldText의 길이는 28이 맞습니다. 이게 제대로 다 들어가고 있는지는 디버깅으로 확인해봐야 할 것 같습니다…ㅜ
지금은 j==1069 && i == 28로 준 상태인데 아래 이미지 상태로 걸어놓았을 땐,
i는 28이 맞는데 j는 비어있습니다.
그래서 F5를 누를 때마다 j가 채워지는 상태입니다.

image

1개의 좋아요

j는 인덱스인데 j가 비워져있고 채워진다는 게 무슨 말씀이신지 잘 모르겠습니다. 인덱스로서 증가한다는 말씀이신가요??

2개의 좋아요

중단점은 제대로 거신 것 같은데 데이터가 중단점의 조건까지 입력이 안되는게 아닐까 추측해봅니다.
일단 AND 조건을 풀고 row만 먼저 확인해보신 후 그 때의 split length가 28인지 확인해보셔야 할 것 같아요.

2개의 좋아요

j는 1069로 채워지지 않고, 1부터 다시 카운드한다는 말씀이었습니다!

1개의 좋아요

j의 최대는 cellCount의 값인 28에서 1을 뺀 27이지 않나요? 위에서도 arrFieldText의 길이가 28이라 하셨는데… 1069까지 가야 맞는 건가요?

2개의 좋아요

답변이 늦었습니다. 말씀하신대로 27로 진행하고 기다리니 되었습니다. 조건을 처음 사용해보는 것이라 기다리는 시간을 늦게 확인한 것 같습니다. 답변 남겨주셔서 감사합니다 ^^

1개의 좋아요

답변이 늦었습니다. 이전에 오류로 516번째 쯤에 걸리는 부분이 있었습니다. 이 부분 수정하고, 조건 설정하고 기다리니 조건문에 맞춰서 멈췄었습니다. 도움을 주셔서 감사합니다~ ^^

2개의 좋아요